gpt4 book ai didi

php - 获取指定节点类型的最新 10 篇文章?

转载 作者:行者123 更新时间:2023-12-01 13:26:10 25 4
gpt4 key购买 nike

现在,如果节点类型是文章。在术语页面的左侧,我想显示最新 10 篇文章的标题,节点类型为文章。我不想使用 View ,我该怎么办?谢谢你。

如果我想在节点页面的左侧显示最新 10 篇文章的标题,哪个节点类型是文章。如何编写查询。非常感谢。

ps:我发现 EntityFieldQuery 也许可以做到这一点,但我现在不知道该怎么做。

我的代码:

$query = new EntityFieldQuery();

$query
->entityCondition('entity_type', 'node')
->entityCondition('bundle', 'article')
->propertyCondition('status', 1)
->propertyOrderBy('created', 'DESC')
->range(0, 10);

$result = $query->execute();

最佳答案

代码可以是这样的(使用 db_select() )

$query = db_select("node", "n") // select from the node table
->fields("n", array("nid", "title")) // fields nid, title
->condition("type", "page", "=") // where the node type = page
->orderBy("created", "DESC") // order by the newest
->range(0, 10) // select only 10 records
->execute(); // execute the query

while($record = $query->fetchAssoc()) {
print(l($record['title'], "node/" . $record['nid'])); // print the node title linked to node.
}

另一个使用 EntityFieldQuery() 的例子:
$query = new EntityFieldQuery();
$entities = $query->entityCondition('entity_type', 'node')
->entityCondition('bundle', 'club')
->propertyOrderBy("created", "DESC")
->range(0, 10)
->execute();

foreach($entities['node'] as $obj)
{
$node = node_load($obj->nid);
print(l($node->title, "node/" . $node->nid));
}

性能明智:使用第一种方法。

关于php - 获取指定节点类型的最新 10 篇文章?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13549448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com