2016-10-03 211 views
1

尝试使用WordPress wp_head钩子为背景图像添加样式代码,但它不起作用。下面是代码:(当代码用于F1函数中我碰到一个“错误”的消息,但外界F1功能代码工作正常,并正确地将获取的背景图片URL,这样的问题是与wp_head任何想法wp_head wordpress函数不接受其他函数的样式

function f1() { 
?> <style> 
.boxes{ 
    background-image: 
    url(
<?php 
$images = rwmb_meta('f3'); 
if (!empty($images)) { 
    foreach ($images as $image) { 
    echo $image['url']; 
    } 
} 
else { 
    echo 'error'; 
} 
?> 
); 
}</style> 
<?php 
} 
add_action('wp_head', 'f1'); 
+0

什么错误信息,你得到什么? – Kevinvhengst

+0

没有错误消息,仅仅是“错误”的else语句的结果。变量$图像为空时,它里面的F1功能,但它不是空的, –

+0

好吧,这意味着$ images是空的,所以'rwmb_meta('f3')'什么都不返回。你可以试试vardump'rw mb_meta('f3')',并检查它是否容器什么?你也可以分享'rwmb_meta'的代码,我猜这是一些自定义插件功能?但我不知道它在做什么:) – Kevinvhengst

回答

0

?尝试在POST_ID传递给你的rwmb_meta()调用

function f1() { ?> 
    <style> 
    .boxes{ 
     background-image: 
     url(
    <?php 
    global $post; 
    $images = rwmb_meta('f3', array(), $post->ID); 
    if (!empty($images)) { 
     foreach ($images as $image) { 
     echo $image['url']; 
     } 
    } 
    else { 
     echo 'error'; 
    } 
    ?> 
    ); 
    }</style> 
    <?php 
} 
add_action('wp_head', 'f1'); 
+0

的自定义功能没有帮助。也应该是这样的,因为它是由metabox插件推荐的https://metabox.io/ –

+1

如果您在循环内使用'rwmb_meta',则可以省略$ args和$ post_id参数,但在循环外部您将希望使用它们。 https://metabox.io/docs/get-meta-value/ – Jrod

+0

对不起问题,但究竟应该在那里而不是问号:rwmb_meta('f3','url =?','自定义帖子类型的名称?'); –