所以现在,当帖子更新时,网站会自动创建页面。我希望此页面包含音频播放列表。所以我要做的就是简单地添加短代码:[playlist]
.然后,当音频文件附加到页面时,播放列表会自动生成。
我可以确认此方法适用于指定的ID。
The problem is, 这3个不同的页面,我需要音频被附加到所有三个页面。因此,我的解决方案是创建另一个页面,将音频文件设置为该页面的子级,并将原来的3个页面设置为新页面的子级。然后我可以使用[playlist]
shortcode,但告诉它从父页获取id。
Example:
[playlist id="<?php get_parent_id ?>"]
或者类似的东西。
问题是我无法获取父id。我尝试了多行不同的代码,但都没有效果。播放列表仅获取默认的0 ID,当id=""
为空。
这一切都是为了functions.php
我的主题目录中的文件。
--
也许有更好的方法可以做到这一点,thusfar,这似乎是最简单的解决方案,只要我能得到直接的父ID。它必须存在。
最合适的回答,由SO网友:Nicholas Kearney 整理而成
Here is my solution:
目录是我帖子中的一个自定义字段。
我制作了一个只包含目录号的“虚拟”页面,并将MP3附加到此页面。
$catalogue = get_field(\'catalogue\');
$parent_id = get_page_by_title(strtolower($catalogue));
$direct_id = $parent_id->ID;
$promo_page_content = [playlist id=" . $direct_id . \'"]\';
我意识到这很可能不是写这篇文章的最佳方式。我是PHP新手。但现在,这将把它放在一起。希望这能帮助其他有同样问题的人。