- Statut : non résolu
- Ce sujet contient 19 réponses, 7 participants et a été mis à jour pour la dernière fois par
freed102, le il y a 17 années et 6 mois.
-
AuteurMessages
-
8 octobre 2007 à 22 h 03 min #605000
J’ai akismet mais comme la plateforme n’est pas commerciale j’utilise la version gratuite !
[HS ON]
en fait, j’utilise ces quelques lignes pour afficher le nombre des articles publiés, au début ça marchait bien mais là j’ai plus le nombre d’articles publiés, ça m’affiche rien, quelqu’un pourrait me dire pourquoi ça me fait ça ?function numberposts() {
global $wpdb;
$blogs = wp_cache_get(‘list_activ_blog’, ‘utilz_cache’);
if (false === $blogs) {
$blogs = $wpdb->get_results( « SELECT blog_id FROM $wpdb->blogs WHERE site_id = ‘$wpdb->siteid’ AND public = ‘1’ AND archived = ‘0’ AND mature = ‘0’ AND spam = ‘0’ AND deleted = ‘0’ AND last_updated’0000-00-00 00:00:00′; » );
wp_cache_set(‘list_activ_blog’, $blogs, ‘utilz_cache’);
}
foreach ( $blogs as $blog ) {
$id_blog = (int) $blog->blog_id;
$tableid_blog_posts = ‘wp_’.$id_blog.’_posts’;
$select_union[] = « (SELECT COUNT(*) as total FROM $tableid_blog_posts WHERE post_status = ‘publish’) »;
}
$unions = implode(« ntUNION ALLnt »,$select_union);
$final_query =
« SELECT SUM(total) AS comments_count
FROM ({$unions}) AS all_tags »;
$number_posts = $wpdb->get_var($final_query);
return $number_posts ;
}
Pour l’affichage du nombre des articles, je fais ça :
echo(« Nombre totale des articles: » .numberposts(). »
» );Je comprends plus pourquoi ça ne s’affichent pas comme avant sachant que j’ai rien touché depuis un bout de temps ! oO
Merci d’avance
[HS OFF]
Cordialement,
SCN8 octobre 2007 à 22 h 11 min #605001djul wrote:Pour les stats, j’utilise Automatic Stats : http://wordpress.org/extend/plugins/stats/ qui fonctionne bien.Dans le .txt :
Just like with Akismet, you’re welcome to use the same API key on multiple blogs. In fact our interface is optimized for quickly switching between stats for multiple blogs.
et dans le php :
Requires WordPress 2.1 or later. Not for use with WPMU.
Je viens d’installer quand meme.. Dans le menu, il me sort mes deux blogs de wordress.com et mon blog principal de wpmu, rien de plus..
J’ai testé aussi firestats qui est pas mal dans sa version 1.4.dev
mais là aussi : « WPMU Support is experimental ».8 octobre 2007 à 22 h 20 min #605002le problème avec Firestats c’est la base de données, elle grossit énormément, avec une dizaine de blogs ça peut passer mais du moment où ça dépasse quelques centaines ça devient très embêtant !
Personnellement, pour les statistiques de wpmu, je crois qu’il vaut mieux développer son propre script mais encore faut pas mettre trop de fonctionnalités, nombre de visites, visiteurs et les reffers suffit largement pour une plateforme de Blogging surtout pour des Bloggeurs Alpha .Cordialement,
SCN22 octobre 2007 à 8 h 45 min #605003bonjour,
Je cherche un plug in pour WPMU permettant à l’administrateur de recevoir un email lorsqu’un sujet ou une page vient d’être créée sur n’importe quel blog du site..
j’ai essayé plusieurs trucs mais ça n’a pas l’air de marcher : Punmail, subscribe2 et dd-draft-notification … ou alors je les utilise mal… si vous pouviez me donner un tuyau ce serait cool !Merci !
Freed
PS : en fait pour le dernier plugin (dd-draft-notification ), il est assez simple, j’aimerai m’en servir de base et le modifier, le probleme c’est que je maitrise pas trop les add_action(), j’ai ajouté en bas :
add_action(‘save_post’, ‘dddn_process’);
add_action(‘edit_post’, ‘dddn_process’);
add_action(‘delete_post’, ‘dddn_process’);
add_action(‘publish_post’, ‘dddn_process’);la fonction s’appelle dddn_process, simplement même un simple echo « toto » n’apparait pas quand je poste/modifie une page!
22 octobre 2007 à 12 h 29 min #605004Yesss !! I did it !!!!
J’ai reussi à (plus ou moins) faire mon premier plug in ! (En reprennant sur un plug in existant, j’ai mis mon propre code en fait… et ça marche !
ça m’a non seulement permis de résoudre mon problème, mais surtout aidé à comprendre mieux comment fonctionnent les plug ins… et ma conclusion est : WordPress c’est fantastique !
dites moi ce que vous en pensez :
get_results( »
SELECT ID, user_login
FROM wp_users
« );
if ($_POST[‘hidden_field’]===’Y’) { // form processing
$notify= $_POST[‘notify’];
for ($j=0; $j ID,’notify’) ) {
update_usermeta($users[$j]->ID,’notify’,$notify[$j]);
$output.=$users[$j]->user_login. »<br />n »;
}
}
if ($output) {
?>
<div class="updated">
<h3>Utilisateur mis à jour :</h3>
<p><strong></strong></p></div>
<div class="wrap">
<h2>Notification de publication d’article ou de page</h2>
<p>Envoi un email aux utilisateur séléctionnés lorsqu’un article ou une page vient d’etre publié(e).
</p>
<form name="form1" method="post" action=" »>
<p>ID, »notify »)) $checked.= » checked= »checked » « ;
echo » « ;
echo « <label for="notify[$i]">{$user->user_login}</label><br />n »;
unset($checked);
$i++;
}
?>
</p><hr />
<p class="submit">
<input type="submit" name="Submit" value=" » />
</p>
</form>
</div>
get_results( »
SELECT ID, user_email
FROM wp_users
« );
$tp=$wpdb->prefix;
$req= » SELECT post_status, post_title, user_login, user_nicename, display_name
FROM {$tp}posts, wp_users
WHERE {$tp}posts.post_author = wp_users.ID
AND {$tp}posts.ID = ‘$post_ID' »;
$result = $wpdb->get_row($req);
$headers= »MIME-Version: 1.0n »;
$headers.= « From: « .get_bloginfo(‘admin_name’). » n »;
$headers .= « MIME-version: 1.0n »;
$headers .= « Content-type: text/html; charset=iso-8859-1 n »;
$subject= »Un article vient d’être publié ou modifié »;
$fullmsg.= »Un article vient d’être publié sur le blog <strong>« .get_bloginfo(‘name’). »</strong><br />« ;
$fullmsg.= »Voir l’article : <a>>> « .$result->post_title. » </a><br /><br />« ;
$fullmsg.= »Cordialement,<br />« ;
$fullmsg.= »Le Webmaster.<br />« ;
$i=0;
foreach ($users as $user) {
if (get_usermeta($user->ID, »notify »)==1){
$recipient=$user->user_email;
mail($recipient, $subject, nl2br($fullmsg), $headers);
unset($recipient);
}
$i++;
}
return $post_ID;
}
function notifications_delete_article($post_ID) {
global $wpdb;
$users = $wpdb->get_results( »
SELECT ID, user_email
FROM wp_users
« );
$tp=$wpdb->prefix;
$req= » SELECT post_status, post_title, user_login, user_nicename, display_name
FROM {$tp}posts, wp_users
WHERE {$tp}posts.post_author = wp_users.ID
AND {$tp}posts.ID = ‘$post_ID' »;
$result = $wpdb->get_row($req);
$headers= »MIME-Version: 1.0n »;
$headers.= « From: « .get_bloginfo(‘admin_name’). » n »;
$headers .= « MIME-version: 1.0n »;
$headers .= « Content-type: text/html; charset=iso-8859-1 n »;
$subject= »Un article vient d’être supprimé »;
$fullmsg.= »L’article « ».$result->post_title. » » vient d’être supprimé sur le blog <strong>« .get_bloginfo(‘name’). »</strong><br /><br />« ;
//$fullmsg.= »Ancien article : <a>>> « .wp_title(). » </a><br /><br />« ;
$fullmsg.= »Cordialement,<br />« ;
$fullmsg.= »Le Webmaster.<br />« ;
$i=0;
foreach ($users as $user) {
if (get_usermeta($user->ID, »notify »)==1){
$recipient=$user->user_email;
mail($recipient, $subject, nl2br($fullmsg), $headers);
unset($recipient);
}
$i++;
}
return $post_ID;
}
function notifications_page($post_ID) {
global $wpdb;
$users = $wpdb->get_results( »
SELECT ID, user_email
FROM wp_users
« );
$tp=$wpdb->prefix;
$req= » SELECT post_status, post_title, user_login, user_nicename, display_name
FROM {$tp}posts, wp_users
WHERE {$tp}posts.post_author = wp_users.ID
AND {$tp}posts.ID = ‘$post_ID' »;
$result = $wpdb->get_row($req);
$headers= »MIME-Version: 1.0n »;
$headers.= « From: « .get_bloginfo(‘admin_name’). » n »;
$headers .= « MIME-version: 1.0n »;
$headers .= « Content-type: text/html; charset=iso-8859-1 n »;
$subject= »Une page vient d’être publiée ou modifié »;
$fullmsg.= »Une page vient d’être publiée sur le blog <strong>« .get_bloginfo(‘name’). »</strong><br />« ;
$fullmsg.= »Voir la page : <a>>> « .$result->post_title. » </a><br /><br />« ;
$fullmsg.= »Cordialement,<br />« ;
$fullmsg.= »Le Webmaster.<br />« ;
$i=0;
foreach ($users as $user) {
if (get_usermeta($user->ID, »notify »)==1){
$recipient=$user->user_email;
mail($recipient, $subject, nl2br($fullmsg), $headers);
unset($recipient);
}
$i++;
}
return $post_ID;
}
function notifications_delete_page($post_ID) {
global $wpdb;
$users = $wpdb->get_results( »
SELECT ID, user_email
FROM wp_users
« );
$tp=$wpdb->prefix;
$req= » SELECT post_status, post_title, user_login, user_nicename, display_name
FROM {$tp}posts, wp_users
WHERE {$tp}posts.post_author = wp_users.ID
AND {$tp}posts.ID = ‘$post_ID' »;
$result = $wpdb->get_row($req);
//$recipient = ‘fleve@ecedi.fr’;
$headers= »MIME-Version: 1.0n »;
$headers.= « From: « .get_bloginfo(‘admin_name’). » n »;
$headers .= « MIME-version: 1.0n »;
$headers .= « Content-type: text/html; charset=iso-8859-1 n »;
$subject= »Une page vient d’être supprimée »;
$fullmsg.= »La page « ».$result->post_title. » » vient d’être supprimée sur le blog <strong>« .get_bloginfo(‘name’). »</strong><br /><br />« ;
//$fullmsg.= »Ancienne page : <a>>> « .$result->post_title . » </a><br /><br />« ;
$fullmsg.= »Cordialement,<br />« ;
$fullmsg.= »Le Webmaster.<br />« ;
$i=0;
foreach ($users as $user) {
if (get_usermeta($user->ID, »notify »)==1){
$recipient=$user->user_email;
mail($recipient, $subject, nl2br($fullmsg), $headers);
unset($recipient);
}
$i++;
}
return $post_ID;
}
add_action(‘publish_post’, ‘notifications_article’);
add_action(‘edit_post’, ‘notifications_article’);
add_action(‘publish_page’, ‘notifications_page’);
add_action(‘edit_page’, ‘notifications_page’);
add_action(‘delete_post’, ‘notifications_delete_article’);
add_action(‘delete_page’, ‘notifications_delete_page’);
add_action(‘admin_menu’, ‘ecedi_notification_menu’);
?> -
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.