Wordpress: добавьте the_permalink к ссылке внутри функции - PullRequest
2 голосов
/ 12 октября 2011

Я очень новичок в PHP и действительно не знаю, с чего начать, когда речь заходит о его написании.

Я нашел эту функцию для Wordpress, которую я использую:

function excerpt($limit) {
  $excerpt = explode(' ', get_the_excerpt(), $limit);
  if (count($excerpt)>=$limit) {
    array_pop($excerpt);
    $excerpt = implode(" ",$excerpt).'<a href="<?php the_permalink(); ?>">Read In Full</a>';
  } else {
    $excerpt = implode(" ",$excerpt);
  } 
  $excerpt = preg_replace('`\[[^\]]*\]`','',$excerpt);
  return $excerpt;
}

function content($limit) {
  $content = explode(' ', get_the_content(), $limit);
  if (count($content)>=$limit) {
    array_pop($content);
    $content = implode(" ",$content).'[...]';
  } else {
    $content = implode(" ",$content);
  } 
  $content = preg_replace('/\[.+\]/','', $content);
  $content = apply_filters('the_content', $content); 
  $content = str_replace(']]>', ']]&gt;', $content);
  return $content;

}

В приведенном выше коде я поместил

"<?php the_permalink(); ?>"

в href. Он просто отображается в виде цепочки слов вместо создания ссылки на ссылку сообщений.

Кто-нибудь поможет мне ?? Спасибо!

Ответы [ 2 ]

2 голосов
/ 04 марта 2012

У меня возникла именно эта проблема, и я обнаружил, что sbrajesh был прав - нам нужно использовать get_permalink(). Но это работает, только если вы правильно добавили php - когда я использовал <?php ?>, он вообще не обрабатывал php (просто выплевывал html).

Вот рабочая версия, с которой я закончил: echo implode(' ', $words)."<span class='more'><a href='" . get_permalink() . "'>read more</a></span>"; }

0 голосов
/ 12 октября 2011

Попробуйте так:

$excerpt = implode(" ",$excerpt).'<a href="'<?php the_permalink(); ?>'">Read In Full</a>';

Вы забыли поставить 'до и после php.Надеюсь, это поможет вам.

Позже отредактируйте:

Я полагаю, весь ваш код написан на php.Тогда я думаю, что вы должны попробовать:

$excerpt = implode(" ",$excerpt).'<a href="'.the_permalink().'">Read In Full</a>';

Надеюсь, на этот раз сработает.

...