是否可以修改当前帖子的图片附件的网址,以便浏览器在img标签中接收带有已修改网址的html?
我不想更新图片附件属性。
我正在寻找与帖子内容相同的灵活性,因为它可以读入,修改然后返回帖子的内容。
我知道wp_get_attachment_image_src()
和the_post_thumbnail_url()
是获取附件网址的方法。但我无法找到任何方法来返回当前帖子的修改后的网址。
一种可能性是use output buffering to catch the final HTML,使用ob_start()
等
但是有没有更有针对性的方法来解析图像后附件?
答案 0 :(得分:1)
我使用输出缓冲回答了我自己的问题。注意我正在使用Genesis主题,因此可以访问其他钩子,例如genesis_after_content,它位于循环之后和页脚之前,因此已经准备好了完整的html内容。这样就可以访问精选图片网址(不可能来自get_the_content)以及来自精选页面/帖子小部件等的任何/所有图片网址......无论您在渲染内容中看到什么内容。
<?php
//at start of php script set output buffering
ob_start();
session_start();
//script does stuff
if (isset($_SESSION['some_variable_is_set'])) {
add_action( 'genesis_after_content', 'my_replace_image_urls');
//used genesis_after_content hook as full html content is now prepared
}
function my_replace_image_urls() {
$full_content = ob_get_clean();
//modify $full_content as needed
echo $full_content;
}