[英]get_permalink not working because of apostrophes?
在我的帖子中實施Facebook評論框時遇到問題。 我當前使用的WordPress主題不使用single.php
來構建發布布局,而是使用某種模塊文件。 過去,我總是通過在single.php中實現代碼來使Facebook注釋框正常工作。
構建帖子頁面的文件包含一個類似於我所指的示例
...
} else {
$buffy .= $this->get_content();
}
$buffy .= '<h4 class="block-title"><span>DEEL</span></h4>';
$buffy .= do_shortcode('[ssba]');
$buffy .= '<br><h4 class="block-title"><span>REAGEER</span></h4>';
$buffy .= '<div class="fb-comments" data-href="<?php echo get_permalink(); ?>" data-colorscheme="light" data-numposts="5" data-mobile="false" data-width="700"></div>';
$buffy .= '<footer class="clearfix">';
$buffy .= $this->get_post_pagination();
$buffy .= $this->get_review();
...
如您所見,我添加了以下代碼:
$buffy .= '<div class="fb-comments" data-href="<?php echo get_permalink(); ?>" data-colorscheme="light" data-numposts="5" data-mobile="false" data-width="700"></div>';
返回的響應為“ href URL格式不正確”。 我認為這與以下事實有關:在代碼的開頭和結尾都有撇號。 刪除撇號將破壞整個頁面,並且get_permalink
無法正常工作。
您的字符串中有錯誤。 首先,問題在於PHP
-code內,這意味着您不需要打開/關閉標簽即可使用函數(即使是在字符串中)。
此外,可以使用單引號( '
)。 使用單引號時,不會執行PHP。 如果您使用了雙引號( "
),則無需像我一樣將字符串連接起來(但是您必須將標記中的所有雙引號轉義)。
這應該工作:
$buffy .= '<div class="fb-comments" data-href="' . get_permalink() . '" data-colorscheme="light" data-numposts="5" data-mobile="false" data-width="700"></div>';
...要么...
$buffy .= "<div class=\"fb-comments\" data-href=\"get_permalink()\" data-colorscheme=\"light\" data-numposts=\"5\" data-mobile=\"false\" data-width=\"700\"></div>';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.