Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 获取要回显到wordpress短代码的url的id_Php_Wordpress - Fatal编程技术网

Php 获取要回显到wordpress短代码的url的id

Php 获取要回显到wordpress短代码的url的id,php,wordpress,Php,Wordpress,我有一个url,我想做的就是在.mp3之前得到数字,这样我就可以把它添加到wordpress的短码中。url来自rss源。你们可以在这里看到这个例子,现在它正在工作,因为我在短代码中手动输入id,但从rss提要中我得到了url,但我无法通过php从url中获取id,以便回显到短代码中 这是我的密码: <?php $enclosure = get_post_meta($post->ID , 'enclosure', $single = true); $media=exp

我有一个url,我想做的就是在.mp3之前得到数字,这样我就可以把它添加到wordpress的短码中。url来自rss源。你们可以在这里看到这个例子,现在它正在工作,因为我在短代码中手动输入id,但从rss提要中我得到了url,但我无法通过php从url中获取id,以便回显到短代码中

这是我的密码:

    <?php $enclosure = get_post_meta($post->ID , 'enclosure', $single = true);
    $media=explode(chr(10),$enclosure); ?>
    <?php if (!is_null($media)) : ?>
    <?php $url='<a href="'.$media[0].'" rel="nofollow">'.$media[0].'</a>';
    echo($url); ?>
    <?php endif; ?>

    <?php $mp3title=the_title(); ?>
    <?php $url=''.$mp3title.'';echo($url); ?>
<?php echo do_shortcode("[spreaker type=standard width=100% autoplay=false episode_id=3161467]"); ?>


非常感谢您的帮助

通过几个PHP函数解决了这个问题,并且:


可能很淘气,使用正则表达式

preg_match('~(\d+)(?=\.mp3)~',$url,$matches)
然后,$matches[0]将包含
3360726

这是短代码,请不要在每行打开和关闭PHP标记。仅用于在PHP和HTML之间切换。这样读代码是非常困难的。您的相同代码具有健全的格式:
preg_match('~(\d+)(?=\.mp3)~',$url,$matches)