Pimcore:列出具有与提供的年份和月份匹配的 DateTime 对象的对象
Pimcore: List objects with DateTime object matching a provided year and month
我的机构正在为 Pimcore 上的博客部署构建过滤控件,我们正在尝试按给定的 YYYY-MM 组合过滤帖子。我们对作者对象和主题对象进行过滤。
这是我们控制器中应用过滤器和返回帖子的代码块...
// Pagination page...
$page = (int)$this->getParam("page") < 1 ? 1 : (int)$this->getParam("page");
// Results per page...
$rpp = (int)$this->document->getProperty( 'resultsPerPage' ) < 1 ? 1 : (int)$this->document->getProperty( 'resultsPerPage' );
// Return list of posts...
$list = new Object\BlogArticle\Listing();
// Apply author filter...
if( $this->getParam( 'filter-by' ) == 'author' ) {
$list->setCondition( 'author LIKE ?', "%,".(int)$this->getParam( 'author' ).",%" );
}
// Apply category filter...
if( $this->getParam( 'filter-by' ) == 'category' ) {
$list->setCondition( 'categories LIKE ?', "%,".(int)$this->getParam( 'category' ).",%" );
}
// This isn't working!
if( $this->getParam( 'filter-by' ) == 'archive' ) {
$list->setCondition( "DATE_FORMAT(FROM_UNIXTIME(date), '%Y-%m') = ".$list->quote( $this->getParam( 'archive' ) ) );
}
// Order by date...
$list->setOrderKey( "date" );
$list->setOrder( $this->document->getProperty( 'resultsSort' ) == 'asc' ? 'asc' : 'desc' );
// Apply pagination values...
$list->setLimit( $rpp );
$list->setOffset( ( $page - 1 ) * $rpp );
// Do it!
$this->view->blog = $list->getObjects();
$this->getParam( 'archive' )
等同于 2016-06
。 Zend DateTime 对象绑定到 date
列。
我查看了 Pimcore 文档,但找不到有关如何查询对象的 DateTime 字段的任何信息。
您的方法似乎完全有效并且应该有效。日期函数名称中只有一个错误。它应该是 FROM_UNIXTIME 而不是 FROMUNIXTIME.
我的机构正在为 Pimcore 上的博客部署构建过滤控件,我们正在尝试按给定的 YYYY-MM 组合过滤帖子。我们对作者对象和主题对象进行过滤。
这是我们控制器中应用过滤器和返回帖子的代码块...
// Pagination page...
$page = (int)$this->getParam("page") < 1 ? 1 : (int)$this->getParam("page");
// Results per page...
$rpp = (int)$this->document->getProperty( 'resultsPerPage' ) < 1 ? 1 : (int)$this->document->getProperty( 'resultsPerPage' );
// Return list of posts...
$list = new Object\BlogArticle\Listing();
// Apply author filter...
if( $this->getParam( 'filter-by' ) == 'author' ) {
$list->setCondition( 'author LIKE ?', "%,".(int)$this->getParam( 'author' ).",%" );
}
// Apply category filter...
if( $this->getParam( 'filter-by' ) == 'category' ) {
$list->setCondition( 'categories LIKE ?', "%,".(int)$this->getParam( 'category' ).",%" );
}
// This isn't working!
if( $this->getParam( 'filter-by' ) == 'archive' ) {
$list->setCondition( "DATE_FORMAT(FROM_UNIXTIME(date), '%Y-%m') = ".$list->quote( $this->getParam( 'archive' ) ) );
}
// Order by date...
$list->setOrderKey( "date" );
$list->setOrder( $this->document->getProperty( 'resultsSort' ) == 'asc' ? 'asc' : 'desc' );
// Apply pagination values...
$list->setLimit( $rpp );
$list->setOffset( ( $page - 1 ) * $rpp );
// Do it!
$this->view->blog = $list->getObjects();
$this->getParam( 'archive' )
等同于 2016-06
。 Zend DateTime 对象绑定到 date
列。
我查看了 Pimcore 文档,但找不到有关如何查询对象的 DateTime 字段的任何信息。
您的方法似乎完全有效并且应该有效。日期函数名称中只有一个错误。它应该是 FROM_UNIXTIME 而不是 FROMUNIXTIME.