Zeleo bih, radi vezbe, da napravim jedan ne bas ekstremno koristan, ali ipak upotrebljiv plugincic...
http://www.cardiffphotobooth.co.uk/
U dnu strane mozete da vidite slicicu, nista posebno, apsolutno pozicionirana slika, koja bi trebalo s vremena na vreme da se menja...
E, sad, to se trenutno radi modifikacijom page sablona (menjanjem html-a; linka za sliku). Pomislio sam da bi mogao da tu jednostavnu funkciju odradi plugin. Kod:
PHP kôd:
<?php
/*
Plugin Name: image_updater
Plugin URI: http://www.google.com
Description: This plugin helps you change image in html body
Version: 0.1
Author: Sinisake
Author URI: http://www.google.com
License: GPL2
*/
function image_updater_options_page () {
?>
<div class="wrap">
<h2>Image update</h2>
<form action="" method="post" enctype="multipart/form-data">
<p>Upload Image</p>
<p>Image<input name="image" type="file" /></p>
<p><input name="submit_image" type="submit" value="SUBMIT" /></p>
</form>
</div>
<?php
if(isset($_POST['submit_image'])) {
$allowed_types=array("image/jpeg","image/pjpeg","image/gif","image/png","image/x-png");
//upload images
$tip=$_FILES["image"]["type"];
$name=$_FILES["image"]["name"];
$tmp_name=$_FILES['image']['tmp_name'];
$size=$_FILES['image']['size'];
$uploads = wp_upload_dir(); // Array of key => value pairs
$upload_direct=$uploads['basedir'].'/img/';
if($_FILES["image"]["name"]!=""){
//print_r($_FILES["image"]["name"]);
$file_info = getimagesize($tmp_name);
if(empty($file_info)) {
die ('File is not image! Please use just .jpg, .png, and .gif files!');
}
if(!in_array($tip,$allowed_types)){
die("<span class='error'>Upload just these extensions:(jpg,png,gif)!</span>");
}
//copy files!!!!!
$result=move_uploaded_file($tmp_name,$upload_direct.$name);
//insert into database
global $wpdb;
if($result)
mysql_query('TRUNCATE TABLE imger');
$db_res=$wpdb->query("INSERT INTO imger (id,image) VALUES ('', '$name')");
}
if($db_res){echo("<script>alert('Update successful')</script>");
}
//);}
else {echo("<script>alert(ERROR)</script>");die();}
}
}
?>
<?php
function image_updater_menu () {
add_menu_page('Image updater','Update Image','manage_options','image_updater_admin', image_updater_options_page);
}
add_action('admin_menu','image_updater_menu');
//sta ovde???
//add_filter('the_title', 'bottom_image');
function bottom_image() {
global $wpdb;
$myrows = $wpdb->get_results( "SELECT image FROM imger" );
//echo $myrows[0]->image;
$uploads = wp_upload_dir();
return "<img src=".$uploads['baseurl'].'/img/'.$myrows[0]->image." />";
}
?>
E sad, zastao sam kod, za me, neresive stvari. Kako da ovaj HTML iz poslednje funkcije ubacim na stranu (moze iza headera, moze negde ispod footera), ALI BEZ menjanja page templejta...dakle, samo pomocu plugina?
I, da, ali to cu vec, valjda, resiti - plugin bi pri instalaciji trebalo da kreira novu tabelu u bazi i novi folder za upload ovih slika koje ce se menjati....
Znaci, sve ovo zasad fukcionise, upload iz admin panela, update baze (dodacu kasnije brisanje stare slike) samo je ostao taj kljucni problem - ubacivanje HTML-a u output, tako da promena bude vidljiva na svakoj ''strani"... koje filtere, akcije, hukove pozvati???
Hvala unapred!