我已经编写了一些PHP和HTML代码,用于在每个帖子的顶部和底部插入社交分享按钮。
由于按钮在同一页面上出现两次,我不得不在两个位置复制粘贴相同的HTML。
我有什么方法可以在某个地方只保存一次HTML代码,然后使用WordPress shortcodes
或其他类似内容输出它?我只想避免在需要在不同位置添加共享按钮时复制粘贴相同的HTML。
更新
使用以下代码生成社交媒体链接(类似于Twitter等其他网络):
<a href="http://www.facebook.com/sharer/sharer.php?u=<?php echo urlencode(get_permalink());?>" class="fb"><i class="fab fa-facebook-f"></i></a>
我需要一种方法来从短代码函数中正确获取正常链接和标题等。
感谢。
答案 0 :(得分:0)
你可以通过使用钩子来实现这一点。我在这里使用the_content钩子。所以你不需要改变任何模板系统。在主题中的functions.php中创建一个小函数。
function yourtheme_before_after($content) {
global $post;
$socialIcons = '<a href="share.php?u='.get_permalink($post).'">Facebook</a>';
$socialIcons .= '<a>Twitter</a>';
$socialIcons .= '<a>Pintrest</a>';
$beforecontent = $socialIcons;
$aftercontent = $socialIcons;
$fullcontent = $beforecontent . $content . $aftercontent;
return $fullcontent;
}
add_filter('the_content', 'yourtheme_before_after');
基本上,您在自定义内容后附加帖子内容,然后返回结果。
注意:您可以使用css / html修改社交图标部分
编辑:在该功能中添加了全球$ post ,您可以获得与发布相关的所有内容。