Skip to content

Cannot use both id and page-template in show_on array #421

@sambulance

Description

@sambulance

I have some meta boxes that need to only appear on the homepage and when a certain page template is selected.

I tried using the following setup:

$meta_boxes[] = array(
	'title'    => 'Feature Settings',
	'pages'    => array( 'page' ),
	'show_on'  => array(
		'id' => array( get_option( 'page_on_front' ) ),
		'page-template' => array(
			'page-templates/feature.php',
		),
	),
	'context'  => 'normal',
	'priority' => 'core',
	'fields'   => $this->fields(),
);

But the boxes do not appear on the front page. Any value passed to id is ignored while page-template exists in the same show_on array.

I've got around this by having two $meta_boxes[] arrays, one with using id and the other using page_template, which works fine.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions