【问题标题】:Show Multisite Subpages WordPress显示多站点子页面 WordPress
【发布时间】:2018-08-14 16:52:04
【问题描述】:

我有一个多站点安装:
1:主站点-domain.com
2:其他网站 - domain.com/some-url

已修复:到目前为止一切顺利。我的脚本在标题下方自动显示内容,而不是在插入短代码的位置。

function subsites_list_sites() {
    $subsites = get_sites();    
    if ( ! empty ( $subsites ) ) {  
        echo '<div class="subsites-container">';
        foreach( $subsites as $subsite ) {
            $subsite_id = get_object_vars( $subsite )["blog_id"];
            $subsite_name = get_blog_details( $subsite_id )->blogname;
            $subsite_link = get_blog_details( $subsite_id )->siteurl;
            echo '<div class="subtite-item site-' . $subsite_id . '">
            <a class="thumb" href="' . $subsite_link . '">Here i want the featured image/thumbnail to display</a>
            <a class="title-link" href="' . $subsite_link . '"><h3 class="title">' . $subsite_name . '</h3></a>
            <a class="excerpt" href="' . $subsite_link . '"><p>Here i want excerpt<p></a>
            <a class="btn-link" href="' . $subsite_link . '">GO TO WEBSITE</a>
            </div>';
        }
        echo '</div>';
    }
}
add_shortcode( 'subsites_list_sites_sc', 'subsites_list_sites' );

【问题讨论】:

  • 您应该为“MISSING”部分打开另一个问题。这实际上是一个完全不同的问题,与短代码无关
  • 我会这样做的。感谢您在这里照顾新人 :)

标签: php wordpress multisite


【解决方案1】:

短代码应该返回 html 而不是在短代码函数中打印出来。

试试这样:

function subsites_list_sites() {
    $subsites = get_sites();
    $returnHtml = '';    
    if ( ! empty ( $subsites ) ) {  
        $returnHtml .= '<div class="subsites-container">';
        foreach( $subsites as $subsite ) {
            $subsite_id = get_object_vars( $subsite )["blog_id"];
            $subsite_name = get_blog_details( $subsite_id )->blogname;
            $subsite_link = get_blog_details( $subsite_id )->siteurl;
            $returnHtml .= '<div class="subtite-item site-' . $subsite_id . '">
            <a class="thumb" href="' . $subsite_link . '">Here i want the featured image/thumbnail to display</a>
            <a class="title-link" href="' . $subsite_link . '"><h3 class="title">' . $subsite_name . '</h3></a>
            <a class="excerpt" href="' . $subsite_link . '"><p>Here i want excerpt<p></a>
            <a class="btn-link" href="' . $subsite_link . '">GO TO WEBSITE</a>
            </div>';
        }
        $returnHtml .= '</div>';
    }
    return $returnHtml;
}

输出
插入短代码处理函数的返回值 进入帖子内容输出代替简码宏。记住 使用 return 而不是 echo - 任何回显的内容都将输出到 浏览器,但它不会出现在页面上的正确位置。 https://codex.wordpress.org/Shortcode_API#Output

【讨论】:

  • 刚刚做了.. 你会为我的问题 +1 吗:)
猜你喜欢
  • 2017-02-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-08
  • 2016-04-10
  • 1970-01-01
  • 2017-10-28
  • 1970-01-01
相关资源
最近更新 更多