- Statut : non résolu
- Ce sujet contient 3 réponses, 2 participants et a été mis à jour pour la dernière fois par sylvainbr, le il y a 11 années et 7 mois.
-
AuteurMessages
-
9 mai 2013 à 10 h 43 min #524019
Bonjour,
Ma configuration WP actuelle
– Version de WordPress : 3.5.1
– Version de PHP/MySQL :
– Thème utilisé : host
– Extensions en place :
– Nom de l’hebergeur : NT conseil
– Adresse du site : http://armeco.org/Problème(s) rencontré(s) :
Je voudrais rajouter le nombre de commentaire en fin de chaque article.
J’ai télécharger d’autres thèmes qui l’on.
En éditant le thème ayant un compteur de commentaire je n’est rien vu de l’endroit où mettre ce code.Sur ce forum j’ai trouvé le code suivant à mettre dans le fichier index.php
Code pour afficher un compteur de commentaire
<?php comments_popup_link('aucun commentaire', '1 commentaire', '% commentaires', 'comments-link', 'Les commentaires sont fermés'); ?>
Mais en le mettant à divers endroit du fichier index.php je ne voit rien apparaître.
Fichier index.php
<?php get_header(); ?>
<div class="contentLayout">
<div class="content">
<?php
$prev_link = get_previous_posts_link(__('Newer Entries »', 'kubrick'));
$next_link = get_next_posts_link(__('« Older Entries', 'kubrick'));
?>
<?php if ($prev_link || $next_link): ?>
<div class="Post">
<div class="Post-tl"></div>
<div class="Post-tr"><div></div></div>
<div class="Post-bl"><div></div></div>
<div class="Post-br"><div></div></div>
<div class="Post-tc"><div></div></div>
<div class="Post-bc"><div></div></div>
<div class="Post-cl"><div></div></div>
<div class="Post-cr"><div></div></div>
<div class="Post-cc"></div>
<div class="Post-body">
<div class="Post-inner article">
<div class="PostContent">
<div class="navigation">
<div class="alignleft"><?php echo $next_link; ?></div>
<div class="alignright"><?php echo $prev_link; ?>‘, ‘
‘); ?>
‘, ‘
‘); ?>
_e(‘Sorry, but you are looking for something that isn’t here.’, ‘kubrick’); ?>
9 mai 2013 à 20 h 44 min #892438J’ai oublier de demander la chose suivante:
Est-il possible de rajouter un suivit des commentaires (un genre d’abonnement et désabonnement par rapport à un article).
J’ai beau comparer les fonctions similaires comprise dans des thèmes qui ont un compteur de commentaire.
J’ai du mal à me retrouver avec tous les fichiers PHP. Et je n’arrive pas à reproduire le code pour mon thème.
j’ai des erreur de programmations en suivant cette exemple:Merci d’avance pour votre aide.
10 mai 2013 à 9 h 24 min #892439sylvainbr wrote:Mais en le mettant à divers endroit du fichier index.php je ne voit rien apparaître.Certainement parce que la fonction appelée est spécifique au dit thème, il vous donc aussi l’installer dans le fichier function.php
11 mai 2013 à 19 h 44 min #892440D’après cette dicution J’ai rentré la fonction de compteur de commentaire:
function comments_number( $zero = false, $one = false, $two = false, $three = false, $more = false, $deprecated = » ) {
global $id;
$number = get_comments_number($id);
if ( $number > 3 )
$output = str_replace(‘%’, number_format_i18n($number), ( false === $more ) ? __(‘% Comments’) : $more);
elseif ( $number == 0 )
$output = ( false === $zero ) ? __(‘No Comments’) : $zero;
elseif ( $number == 1 )
$output = ( false === $one ) ? __(‘1 Comment’) : $one;
elseif ( $number == 2 )
$output = ( false === $two ) ? __(‘2 Comments’) : $two;
elseif ( $number == 3 )
$output = (false === $three ) ? __(‘3 Comments’) : $three;
echo apply_filters(‘comments_number’, $output, $number);
}Si dans mon fichier founction.php je met le début du code comme suit:
function comments_number( $zero = false, $one = false, $two = false, $three = false, $more = false, $deprecated = » ) {j’ai l’erreur suivante:
Parse error: syntax error, unexpected $end in C:xampphtdocswp-contentthemeshostfunctions.php on line 283 (qui correspond à la dernière ligne du fichier function.php)Si dans mon fichier founction.php je met le début du code comme suit:
function comments_number( $zero = false, $one = false, $two = false, $three = false, $more = false, $deprecated = » )
{j’ai l’erreur suivante:
Fatal error: Cannot redeclare comments_number() (previously declared in C:xampphtdocswp-includescomment-template.php:573) in C:xampphtdocswp-contentthemeshostfunctions.php on line 284voici la copie de mon fichier function.php:
« true »
);
load_theme_textdomain(‘kubrick’);
if (!function_exists(‘get_previous_posts_link’)) {
function get_previous_posts_link($label)
{
ob_start();
previous_posts_link($label);
return ob_get_clean();
}
}
if (!function_exists(‘get_next_posts_link’)) {
function get_next_posts_link($label)
{
ob_start();
next_posts_link($label);
return ob_get_clean();
}
}
function art_comment($comment, $args, $depth)
{
$GLOBALS[‘comment’] = $comment; ?>
<li id= »li-comment-« >
<div id="comment-« >
<div class="Post">
<div class="Post-tl"></div>
<div class="Post-tr"><div></div></div>
<div class="Post-bl"><div></div></div>
<div class="Post-br"><div></div></div>
<div class="Post-tc"><div></div></div>
<div class="Post-bc"><div></div></div>
<div class="Post-cl"><div></div></div>
<div class="Post-cr"><div></div></div>
<div class="Post-cc"></div>
<div class="Post-body">
<div class="Post-inner article">
<div class="PostContent">
<div class="comment-author vcard">
<?php echo get_avatar($comment,$size='48',$default='’ ); ?>
<?php printf(__('<cite class="fn">%s</cite> <span class="says">says:</span>‘), get_comment_author_link()) ?>
</div>
comment_approved == ‘0’) : ?>
<em></em>
<br />
<div class="comment-meta commentmetadata"><a href="comment_ID ) ) ?> »></a></div>
<div class="reply">
$depth, ‘max_depth’ => $args[‘max_depth’]))) ?>
</div>
</div>
<div class="cleared"></div>
<?php if (is_page()) edit_post_link(__('Edit this entry.', 'kubrick'), '<p>‘, ‘</p>‘); ?>
</div>
</div>
</div>
</div>
‘<!--- BEGIN Widget -->‘,
‘before_title’ => ‘<!--- BEGIN WidgetTitle -->‘,
‘after_title’ => ‘<!--- END WidgetTitle -->‘,
‘after_widget’ => ‘<!--- END Widget -->‘
));
}
function art_normalize_widget_style_tokens($content) {
$bw = ‘<!--- BEGIN Widget -->‘;
$bwt = ‘<!--- BEGIN WidgetTitle -->‘;
$ewt = ‘<!--- END WidgetTitle -->‘;
$bwc = ‘<!--- BEGIN WidgetContent -->‘;
$ewc = ‘<!--- END WidgetContent -->‘;
$ew = ‘<!--- END Widget -->‘;
$result = »;
$startBlock = 0;
$endBlock = 0;
while (true) {
$startBlock = strpos($content, $bw, $endBlock);
if (false === $startBlock) {
$result .= substr($content, $endBlock);
break;
}
$result .= substr($content, $endBlock, $startBlock – $endBlock);
$endBlock = strpos($content, $ew, $startBlock);
if (false === $endBlock) {
$result .= substr($content, $endBlock);
break;
}
$endBlock += strlen($ew);
$widgetContent = substr($content, $startBlock, $endBlock – $startBlock);
$beginTitlePos = strpos($widgetContent, $bwt);
$endTitlePos = strpos($widgetContent, $ewt);
if ((false == $beginTitlePos) xor (false == $endTitlePos)) {
$widgetContent = str_replace($bwt, », $widgetContent);
$widgetContent = str_replace($ewt, », $widgetContent);
} else {
$beginTitleText = $beginTitlePos + strlen($bwt);
$titleContent = substr($widgetContent, $beginTitleText, $endTitlePos – $beginTitleText);
if (‘ ‘ == $titleContent) {
$widgetContent = substr($widgetContent, 0, $beginTitlePos)
. substr($widgetContent, $endTitlePos + strlen($ewt));
}
}
if (false === strpos($widgetContent, $bwt)) {
$widgetContent = str_replace($bw, $bw . $bwc, $widgetContent);
} else {
$widgetContent = str_replace($ewt, $ewt . $bwc, $widgetContent);
}
$result .= str_replace($ew, $ewc . $ew, $widgetContent);
}
return $result;
}
function art_sidebar($index = 1)
{
if (!function_exists(‘dynamic_sidebar’)) return false;
ob_start();
$success = dynamic_sidebar($index);
$content = ob_get_clean();
if (!$success) return false;
$content = art_normalize_widget_style_tokens($content);
$replaces = array(
‘<!--- BEGIN Widget -->‘ => « <div class="Block">rn <div class="Block-tl"></div>rn <div class="Block-tr"><div></div></div>rn <div class="Block-bl"><div></div></div>rn <div class="Block-br"><div></div></div>rn <div class="Block-tc"><div></div></div>rn <div class="Block-bc"><div></div></div>rn <div class="Block-cl"><div></div></div>rn <div class="Block-cr"><div></div></div>rn <div class="Block-cc"></div>rn <div class="Block-body">rn »,
‘<!--- BEGIN WidgetTitle -->‘ => « <div class="BlockHeader">rn <div class="header-tag-icon">rn <div class="BlockHeader-text">« ,
‘<!--- END WidgetTitle -->‘ => « </div>rn </div>rn <div class="l"></div>rn <div class="r"><div></div></div>rn</div>rn »,
‘<!--- BEGIN WidgetContent -->‘ => « <div class="BlockContent">rn <div class="BlockContent-body">rn »,
‘<!--- END WidgetContent -->‘ => « rn </div>rn</div>rn »,
‘<!--- END Widget -->‘ => « rn </div>rn</div>rn »
);
$bwt = ‘<!--- BEGIN WidgetTitle -->‘;
$ewt = ‘<!--- END WidgetTitle -->‘;
if ( » == $replaces[$bwt] && » == $replaces[$ewt]) {
$startTitle = 0;
$endTitle = 0;
$result = »;
while (true) {
$startTitle = strpos($content, $bwt, $endTitle);
if (false == $startTitle) {
$result .= substr($content, $endTitle);
break;
}
$result .= substr($content, $endTitle, $startTitle – $endTitle);
$endTitle = strpos($content, $ewt, $startTitle);
if (false == $endTitle) {
$result .= substr($content, $startTitle);
break;
}
$endTitle += strlen($ewt);
}
$content = $result;
}
$content = str_replace(array_keys($replaces), array_values($replaces), $content);
echo $content;
return true;
}
function art_list_pages_filter($output)
{
$output = preg_replace(‘~<li>]*)><a>]*)>([^<]*)</a>~’,
‘<li><a><span><span>$3</span></span></a>‘,
$output);
$re = ‘~<li><a ~';
$output = preg_replace($re, '<li class="$1$2"><a class="active" ', $output, 1);
$output = preg_replace($re, '<li class="$1$2"><a>post_parent)
$result[] = $page;
}
if (‘page’ == get_option(‘show_on_front’)) {
$pageOnFront = get_option(‘page_on_front’);
$pageForPosts = get_option(‘page_for_posts’);
if ($pageOnFront) {
foreach ($result as $key => $page) {
if (0 == $page->post_parent && $pageOnFront == $page->ID) {
unset($result[$key]);
break;
}
}
}
if (!$pageOnFront && $pageForPosts) {
foreach ($result as $key => $page) {
if (0 == $page->post_parent && $pageForPosts == $page->ID) {
unset($result[$key]);
break;
}
}
}
}
return $result;
}
function art_menu_items()
{
$homeMenuItemCaption = <<post_title);
$isHomeSelected = is_page($page->ID);
} elseif (!$pageOnFront && $pageForPosts) {
$page = & get_post($pageForPosts);
if (null != $page)
$homeMenuItemCaption = apply_filters(‘the_title’, $page->post_title);
}
}
if (null === $isHomeSelected)
$isHomeSelected = is_home();
if (true === $showHomeMenuItem)
echo ‘<li><a href="' . get_option('home') . '"><span><span>‘
. $homeMenuItemCaption . ‘</span></span></a></li>‘;
add_action(‘get_pages’, ‘art_header_page_list_filter’);
add_action(‘wp_list_pages’, ‘art_list_pages_filter’);
wp_list_pages(‘title_li=’);
remove_action(‘wp_list_pages’, ‘art_list_pages_filter’);
remove_action(‘get_pages’, ‘art_header_page_list_filter’);
}
add_filter(‘comments_template’, ‘legacy_comments’);
function legacy_comments($file) {
if(!function_exists(‘wp_list_comments’)) : // WP 2.7-only check
$file = TEMPLATEPATH.’/legacy.comments.php’;
endif;
return $file;
}
function comments_number( $zero = false, $one = false, $two = false, $three = false, $more = false, $deprecated = » ) {
global $id;
$number = get_comments_number($id);
if ( $number > 3 )
$output = str_replace(‘%’, number_format_i18n($number), ( false === $more ) ? __(‘% Comments’) : $more);
elseif ( $number == 0 )
$output = ( false === $zero ) ? __(‘No Comments’) : $zero;
elseif ( $number == 1 )
$output = ( false === $one ) ? __(‘1 Comment’) : $one;
elseif ( $number == 2 )
$output = ( false === $two ) ? __(‘2 Comments’) : $two;
elseif ( $number == 3 )
$output = (false === $three ) ? __(‘3 Comments’) : $three;
echo apply_filters(‘comments_number’, $output, $number);
} -
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.