| Server IP : 87.229.120.60 / Your IP : 216.73.216.86 Web Server : Apache System : Linux outside 5.4.8_Algonet_ZeroMAC_0.9.4.8 #6 SMP Mon Feb 3 20:36:07 CET 2020 x86_64 User : server ( 1002) PHP Version : 8.3.20 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,curl_multi_exec,parse_ini_file,show_source MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /home/faktorteam/www/wp-content/plugins/wordpress-seo/src/repositories/ |
Upload File : |
<?php
namespace Yoast\WP\SEO\Repositories;
use Yoast\WP\Lib\Model;
use Yoast\WP\Lib\ORM;
use Yoast\WP\SEO\Models\Primary_Term;
/**
* Class Primary_Term_Repository.
*/
class Primary_Term_Repository {
/**
* Starts a query for this repository.
*
* @return ORM
*/
public function query() {
return Model::of_type( 'Primary_Term' );
}
/**
* Retrieves a primary term by a post ID and taxonomy.
*
* @param int $post_id The post the indexable is based upon.
* @param string $taxonomy The taxonomy the indexable belongs to.
* @param bool $auto_create Optional. Creates an indexable if it does not exist yet.
*
* @return Primary_Term|null Instance of a primary term.
*/
public function find_by_post_id_and_taxonomy( $post_id, $taxonomy, $auto_create = true ) {
/**
* Instance of the primary term.
*
* @var Primary_Term $primary_term
*/
$primary_term = $this->query()
->where( 'post_id', $post_id )
->where( 'taxonomy', $taxonomy )
->find_one();
if ( $auto_create && ! $primary_term ) {
$primary_term = $this->query()->create();
}
return $primary_term;
}
}