PHP - Wordpress中的动态社交图标网址

时间:2016-11-02 21:38:20

标签: php wordpress facebook url

客户刚要求我根据Wordpress帖子的语言/区域类别返回不同的Facebook页面链接。例如,如果用户使用葡萄牙语登录博客文章,标题中的FB图标将动态更改为“facebook.com/brandnamebrasil”而不是默认的“facebook.com/brandname”

这是我迄今为止在主题头文件中添加PHP元数据的最佳尝试。任何建议或指示将不胜感激:

<?php 
$theurl = $_SERVER['REQUEST_URI'];
$thecat = explode("/", $theurl);
$post_cat = $thecat[2];
if($post_cat == "category")
{$post_cat = $thecat[3];}
else
{$post_cat = $thecat[2];}

else if($post_cat == "latin-america-pt")
{$the_cat_url = "latin-america-pt/?lang=pt-br"; $mast_url="/wp-content/brasil_header.jpg"; $facebook_link = "https://www.facebook.com/brandnamebrasil";}

else
{$the_cat_url = $post_cat; $facebook_link="https://www.facebook.com/brandname/";} 

 ?>


<div style="position:relative; display: inline; width:1026px; height:128px; background: #fff; margin-top: 45px; padding: 10px 15px;"><a href="<?php echo site_url(); ?>/<?php echo $the_cat_url;?>"><img src="<?php echo site_url(); ?><?php echo $mast_url; ?>" border="0"/></a> 
    <a href="<?php echo $facebook_url;?>" style="display:block; float:right; padding:10px 17px 0px 10px;" target="_blank"><img src="/wp-content/uploads/2016/07/FB.jpg" class="social-icons"></a> 
    <a href="http://instagram.com/brandname" style="display:block; float:right; padding:10px 17px 0px 10px;" target="_blank"><img src="/wp-content/uploads/2016/07/instagram.jpg" class="social-icons"></a> 
    <a href="http://twitter.com/brandname" target="_blank" style="display:block; float:right; padding:10px 17px 0px 10px;" target="_blank"><img src="/wp-content/uploads/2016/07/twitter.jpg" class="social-icons"></a> 
    <a href="http://pinterest.com/brandname" style="display:block; float:right; padding:10px 17px 0px 10px;" target="_blank"><img src="/wp-content/uploads/2016/07/pinterest.jpg" class="social-icons"></a> 
</div>

1 个答案:

答案 0 :(得分:0)

您正在通过网址获取语言信息。如果url格式在将来发生变化,这可能会很危险。

您是否使用任何插件用于不同的语言?如果是,大多数插件都具有返回当前帖子语言的特定功能。例如,对于polylang,您使用pll_current_language()

您还可以使用wordpress函数get_locale()来获取当前语言:

<?php if(get_locale() == 'zh_TW') : ?>
                    只需輸入您的姓名和電子郵件就可接收我們的最新文章:   
<?php else : ?> 
                    Simply enter your name and email to receive our latest posts:
<?php endif; ?>

最后,如果您创建自己的wordpress类别以区分不同的帖子语言,则可以在循环中使用the_category()来获取您的语言类别。

希望这有帮助。