使用PHP将一个Div包裹在Wordpress函数的两个Div周围


Wrap a Div around Two Divs That are a Wordpress Function using PHP

我正试图将一个div封装在另外两个div上。在这些div中有wordpress函数。

例如:

  1. 主页显示分区
  2. 主页显示左分区
  3. Wordpress功能
  4. (关闭jhome左div)
  5. 主页显示右侧分区
  6. wordpress函数
  7. (关闭主页右侧div)
  8. 关闭主页显示分区

我已经有了正确工作的功能,但我正在尝试在我的页面模板中使用以下代码:

echo '<div class="home-display">';
function home_display_left() {
echo '<div class="wrap">';
genesis_widget_area( 'home-display-left', array(
'before' => '<div class="home-display-left">',
'after' => '</div></div>',
) );
}
function home_display_right() {
echo '<div class="wrap">';
genesis_widget_area( 'home-display-right', array(
'before' => '<div class="home-display-right">',
'after' => '</div></div>',
) );
echo '</div></div>';
}
echo '</div> ';

我应该在页面模板中放入哪些正确的代码?

您所拥有的是围绕两个函数定义的主显示div类。也就是说,函数不是在两个echo语句之间迭代运行的——它们只是在那里定义的。您必须将div标记包装在调用函数的位置,或者创建一个新函数来包含它们:

function home_display_left_right() {
    echo '<div class="home-display">';
    home_display_left();
    home_display_right();
    echo '</div> ';
}

或者,根据需要在现有定义中包括打开和关闭div标记:

function home_display_left() {
    echo '<div class="home-display">'; // open .home-display
    echo '<div class="wrap">';
    genesis_widget_area( 'home-display-left', array(
    'before' => '<div class="home-display-left">',
    'after' => '</div></div>',
    ) );
}
function home_display_right() {
    echo '<div class="wrap">';
    genesis_widget_area( 'home-display-right', array(
    'before' => '<div class="home-display-right">',
    'after' => '</div></div>',
    ) );
    echo '</div></div>';
    echo '</div> ';  // close .home-display
}