是否可以将定制的SQL用于单个post.php?

时间:2018-01-25 作者:Badger

是否可以在单个页面中使用自定义SQL。php文件来返回所需的单个帖子的数据?

就我的目的而言,在$querystr中有一些数据操作,使用php很难再现,而使用简单的SQL很容易实现。

如果我把下面的代码放在一页中。php文件,我目前有一个完整的结果集,每个帖子一行。我只想提取与用户单击的页面相关的行/记录/帖子。

<?php

 $querystr = "
    SELECT custom_sql_column_name_here
    FROM custom_sql_example_table
 ";
 $pageposts = $wpdb->get_results($querystr, OBJECT);
?>
 <?php if ($pageposts): ?>
  <?php global $post; ?>
  <?php foreach ($pageposts as $post): ?>
    <?php setup_postdata($post); ?>

    <p><?php the_field(\'custom_sql_column_name_here\'); ?></p>

<?php endforeach; ?>
<?php endif; ?>
<?php wp_reset_query(); ?>
是否有方法使用用户想要的帖子中的ID以及$pageposts或setup\\u postdata($post)中的某个位置来设置所需ID的条件?

我只想知道这是否可能,我不想知道现在已经使用的用php提取单页帖子数据的普遍接受的方法。

1 个回复
SO网友:Milo

如果您只想在模板中获得所请求帖子的ID,get_queried_object_id() 我会给你的。

如果要在执行主查询SQL之前修改它,则有a number of filters that let you directly modify the SQL.

结束