wordpress プラグインに取り組んできました (私はチュートリアルを読んでいましたが、それらはすべて私がよく理解できない用語で話しています)、それはすべて私にとって学習曲線の一部です.
<?php
/*
Plugin Name: Server status Plugin
Plugin URI: http://minepress.co.uk
Description: Minepress is a site which allows users to start up a free Minecraft website for their server. This plugin shows the server status
Version: 0.01
Author: Bradly Spicer
Author URI: http://minepress.co.uk
*/
?>
それは明らかにシェルです。私はそれを作りたいので、人々が入力したものは何でもこのhtmlに入れられます:
[b]Server Status:[/b] [img]http://res.public-craft.com/hb.php?ip=YOUR_IP&port=YOUR_PORT&on=OPTIONAL_ONLINE_IMAGE&off=OPTIONAL_OFFLINE_IMAGE[/img]
私はそれが次の行に沿っていると仮定します:
<h3>Server Status:</h4> <img = "http://res.public-craft.com/hb.php?ip=<?php $Ipaddress?>&port=<?php$Port?>&on=http://minepress.co.uk/images/on.png&off=http://minepress.co.uk/images/off.png"</img>
どうやって組み込めばいいのかわからない
みんなありがとう
言及するのを忘れていましたが、以前にチュートリアルに従って、これを出しました:
<?php
include('config.php');
Class ServerStatus extends WP_Widget
{
function ServerStatus()
{
}
function widget($args, $instance)
{
extract( $args, EXTR_SKIP );
$title = ( $instance['title']) ? $instance['title'] : 'Server Status';
$body = ( $instance['body']) ? $instance['body'] : 'Server Status Body';
?>
<?php echo $before_widget; ?>
<?php echo $before_title . $title . $after_title ?>
<p><?php echo $body ?></p>
error_reporting(E_ALL);
add_action("widgets_init", array('Server_Status', 'register'));
class Widget_name {
function control(){
echo 'I am a control panel';
}
function widget($args){
echo $args['before_widget'];
echo $args['before_title'] . 'Your widget title' . $args['after_title'];
echo 'I am your widget';
echo $args['after_widget'];
}
function register(){
register_sidebar_widget('Widget name', array('Server_Status', 'widget'));
register_widget_control('Widget name', array('Server_Status', 'control'));
}
}
add_option($name, $value);
update_option($name, $new_value);
delete_option($name);
error_reporting(E_ALL);
add_action("widgets_init", array('Server_Status', 'register'));
register_activation_hook( __FILE__, array('Server_Status', 'activate'));
register_deactivation_hook( __FILE__, array('Server_Status', 'deactivate'));
class Widget_name {
function activate(){
$data = array( 'option1' => 'Default value' ,'option2' => 55);
if ( ! get_option('Server_Status')){
add_option('Server_Status' , $data);
} else {
update_option('Server_Status' , $data);
}
}
function deactivate(){
delete_option('widget_name');
}
function control(){
echo 'I am a control panel';
}
function widget($args){
echo $args['before_widget'];
echo $args['before_title'] . 'Your widget title' . $args['after_title'];
echo 'I am your widget';
echo $args['after_widget'];
}
function register(){
register_sidebar_widget('Widget name', array('Server_Status', 'widget'));
register_widget_control('Widget name', array('Server_Status', 'control'));
}
}
function control(){
$data = get_option('Server_Status');
?>
<p><label>Option 1<input name="Server_Status_option1"
type="text" value="<?php echo $data['option1']; ?>" /></label></p>
<p><label>Option 2<input name="Server_Status_option2"
type="text" value="<?php echo $data['option2']; ?>" /></label></p>
<?php
if (isset($_POST['widget_name_option1'])){
$data['option1'] = attribute_escape($_POST['Server_Status_option1']);
$data['option2'] = attribute_escape($_POST['Server_Status_option2']);
update_option('Server_Status', $data);
}
}
目標: 目標は、管理パネルのユーザーがサーバーの IP とポート (2 つの別々の入力フィールド) を入力できるようにすることです。次に、これらが呼び出され、上記のスクリプトのいずれかに入れられます。だと思います
<h3>Server Status:</h4> <img = "http://res.public-craft.com/hb.php?ip=<?php $Ipaddress?>&port=<?php$Port?>&on=http://minepress.co.uk/images/on.png&off=http://minepress.co.uk/images/off.png"</img>
しかし、 $Ipaddress と $Port を入力したものにする方法がわかりません。