dynamicOptions->searchAppearance->taxonomies->{ $taxonomy['name'] }->advanced->robotsMeta->noindex ) { $noindexed[] = $taxonomy['label'] . ' (' . $taxonomy['name'] . ')'; } } return $noindexed; } /** * Returns a list of nofollowed content. * * @since 4.0.0 * * @return array $nofollowed A list of nofollowed content. */ protected function nofollowed() { $globalDefault = aioseo()->options->searchAppearance->advanced->globalRobotsMeta->default; if ( ! $globalDefault && aioseo()->options->searchAppearance->advanced->globalRobotsMeta->nofollow ) { return [ __( 'Your entire site is set to globally nofollow content.', 'all-in-one-seo-pack' ) ]; } $nofollowed = []; if ( ! $globalDefault && aioseo()->options->searchAppearance->advanced->globalRobotsMeta->nofollowPaginated ) { $nofollowed[] = __( 'Paginated Content', 'all-in-one-seo-pack' ); } $archives = [ 'author' => __( 'Author Archives', 'all-in-one-seo-pack' ), 'date' => __( 'Date Archives', 'all-in-one-seo-pack' ), 'search' => __( 'Search Page', 'all-in-one-seo-pack' ) ]; // Archives. foreach ( $archives as $name => $type ) { if ( ! aioseo()->options->searchAppearance->archives->{ $name }->advanced->robotsMeta->default && aioseo()->options->searchAppearance->archives->{ $name }->advanced->robotsMeta->nofollow ) { $nofollowed[] = $type; } } foreach ( aioseo()->helpers->getPublicPostTypes() as $postType ) { if ( aioseo()->dynamicOptions->searchAppearance->postTypes->has( $postType['name'] ) && ! aioseo()->dynamicOptions->searchAppearance->postTypes->{ $postType['name'] }->advanced->robotsMeta->default && aioseo()->dynamicOptions->searchAppearance->postTypes->{ $postType['name'] }->advanced->robotsMeta->nofollow ) { $nofollowed[] = $postType['label'] . ' (' . $postType['name'] . ')'; } } foreach ( aioseo()->helpers->getPublicTaxonomies() as $taxonomy ) { if ( aioseo()->dynamicOptions->searchAppearance->taxonomies->has( $taxonomy['name'] ) && ! aioseo()->dynamicOptions->searchAppearance->taxonomies->{ $taxonomy['name'] }->advanced->robotsMeta->default && aioseo()->dynamicOptions->searchAppearance->taxonomies->{ $taxonomy['name'] }->advanced->robotsMeta->nofollow ) { $nofollowed[] = $taxonomy['label'] . ' (' . $taxonomy['name'] . ')'; } } return $nofollowed; } /** * Returns a debug info data field. * * @since 4.0.0 * * @param string $label The field label. * @param string $value The field value. * @param boolean $private Whether the field shouldn't be included if the debug info is copied. * @return array The debug info data field. */ private function field( $label, $value, $private = false ) { return [ 'label' => $label, 'value' => $value, 'private' => $private, ]; } /** * Returns the test result. * * @since 4.0.0 * * @param string $name The test name. * @param string $status The result status. * @param string $header The test header. * @param string $description The result description. * @param string $actions The result actions. * @return array The test result. */ protected function result( $name, $status, $header, $description, $actions = '' ) { $color = 'blue'; switch ( $status ) { case 'good': break; case 'recommended': $color = 'orange'; break; case 'critical': $color = 'red'; break; default: break; } return [ 'test' => $name, 'status' => $status, 'label' => $header, 'description' => $description, 'actions' => $actions, 'badge' => [ 'label' => AIOSEO_PLUGIN_SHORT_NAME, 'color' => $color, ], ]; } /** * Returns an action link. * * @since 4.0.0 * * @param string $path The path. * @param string $anchor The anchor text. * @return string The action link. */ protected function actionLink( $path, $anchor ) { return sprintf( '

%2$s

', $path, $anchor ); } }