标签: if语句

  • WordPress中if语句判断字段是否存在并输出内容

    在WordPress中可以使用if语句判断字段是否存在并输出内容。基于你的需求,三个社交图标的完整判断代码如下:

    <?php 
    // 微博图标 - 判断 weibo 字段
    $weibo = of_get_option('weibo');
    if (!empty($weibo)) : ?>
        <a href="<?php echo esc_url($weibo); ?>" target="_blank" rel="noopener">
            <i class="fa fa-weibo"></i>
        </a>
    <?php endif; ?>
    
    <?php 
    // 微信图标 - 判断 weixin 字段  
    $weixin = of_get_option('weixin');
    if (!empty($weixin)) : ?>
        <a href="#" data-bs-toggle="modal" data-bs-target="#weixin-Modal">
            <i class="fa fa-weixin mx-3"></i>
        </a>
    <?php endif; ?>
    
    <?php 
    // QQ图标 - 判断 qq 字段
    $qq = of_get_option('qq');
    if (!empty($qq)) : ?>
        <a href="http://wpa.qq.com/msgrd?v=3&uin=<?php echo urlencode($qq); ?>&site=qq&menu=yes" target="_blank" rel="noopener">
            <i class="fa fa-qq"></i>
        </a>
    <?php endif; ?>

    代码说明:

    字段获取:先用 of_get_option() 获取字段值并存储在变量中

    非空判断:使用 if (!empty($value)) 判断字段是否存在且有值

    安全输出:使用 esc_url() 和 urlencode() 对输出内容进行安全处理

    rel=”noopener”:添加安全属性,防止新标签页恶意行为

    简化版(如果你希望更简洁):

    <?php if ($weibo = of_get_option('weibo')) : ?>
        <a href="<?php echo esc_url($weibo); ?>" target="_blank" rel="noopener"><i class="fa fa-weibo"></i></a>
    <?php endif; ?>
    
    <?php if (of_get_option('weixin')) : ?>
        <a href="#" data-bs-toggle="modal" data-bs-target="#weixin-Modal"><i class="fa fa-weixin mx-3"></i></a>
    <?php endif; ?>
    
    <?php if ($qq = of_get_option('qq')) : ?>
        <a href="http://wpa.qq.com/msgrd?v=3&uin=<?php echo urlencode($qq); ?>&site=qq&menu=yes" target="_blank" rel="noopener"><i class="fa fa-qq"></i></a>
    <?php endif; ?>

    这样当某个社交账号未填写时,对应的图标就不会显示在前端页面上。