Files
roi-theme/wp-content/plugins/thrive-ultimatum/inc/classes/display_settings/class-thrive-ult-pages-tab.php
root a22573bf0b Commit inicial - WordPress Análisis de Precios Unitarios
- WordPress core y plugins
- Tema Twenty Twenty-Four configurado
- Plugin allow-unfiltered-html.php simplificado
- .gitignore configurado para excluir wp-config.php y uploads

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 21:04:30 -06:00

73 lines
1.6 KiB
PHP
Executable File

<?php
/**
* Class PagesTab
*/
class Thrive_Ult_Pages_Tab extends Thrive_Ult_Tab implements Thrive_Ult_Tab_Interface {
protected function matchItems() {
if ( ! $this->getItems() ) {
return array();
}
$optionArr = $this->getSavedOptions()->getTabSavedOptions( 3, $this->hanger );
foreach ( $this->getItems() as $page ) {
$option = new Thrive_Ult_Option();
$option->setLabel( $page->post_title );
$option->setId( $page->ID );
$option->setType( 'item_page' );
$option->setIsChecked( in_array( $page->ID, $optionArr ) );
$this->options[] = $option;
}
}
protected function getSavedOption( $item ) {
return $this->getSavedOptionForTab( 3, $item->ID );
}
/**
* @return $this
*/
protected function initItems() {
$this->setItems( get_pages( array(
'sort_column' => 'post_title',
'sort_order' => 'ASC',
'hierarchical' => 0,
) ) );
return $this;
}
/**
* @param $post WP_Post
*
* @return bool
*/
public function displayWidget( WP_Post $post ) {
$this->hanger = 'show_options';
$showOption = $this->getSavedOption( $post );
$display = $showOption->isChecked;
if ( $display === true ) {
$this->hanger = 'hide_options';
$display = ! $this->getSavedOption( $post )->isChecked;
}
return $display;
}
public function isPageDenied( $page ) {
$this->hanger = 'hide_options';
return $this->getSavedOption( $page )->isChecked;
}
public function isPageAllowed( $page ) {
$this->hanger = 'show_options';
return apply_filters( 'tu_is_page_allowed', $this->getSavedOption( $page )->isChecked, $page, $this );
}
}