Wordpressなんか必要か?

Wordpressなんか必要か?と思っていたエンジニアのWordpress入門

Findメソッド

定義

public function find ( $params = null, $limit = 15, $where = null, $sql = null )  

パラメータ

|パラメータ|型|説明| ||| |$params|配列or文字列or整数|関連パラメタの配列、アイテムのID、or for advanced content types the item's slug. $limit (int) (optional) (deprecated) Limit the number of items to find, use -1 to return all items with no limit $where (string) (optional) (deprecated) SQL WHERE declaration to use $sql (string) (optional) (deprecated) For advanced use, a custom SQL query to run

Additional Parameter Options

OPTION TYPE DEFAULT DETAILS where (string) $where SQL WHERE to use, ie "t.my_field = 'test'" - This field also supports tableless traversal like "my_relationship_field.id = 3" with unlimited depth orderby (string) null SQL ORDER BY to use, like "t.name DESC" - This field also supports tableless traversal like "my_relationship_field.name DESC" with unlimited depth groupby (string) null SQL GROUP BY, like 't.city'. limit (int) $limit Limit the number of items to find, use -1 to return all items with no limit offset (int) null Override what's calculated automatically based on 'limit' and 'page' search (bool) true Whether to handle search. Defaults to $this->search, which can be globally overridden by defining the constant PODS_GLOBAL_POD_SEARCH to true/false pagination (bool) true Whether to handle pagination. Defaults to $this->pagination, which can be globally overridden by defining the constant PODS_GLOBAL_POD_PAGINATION to true/false page (int) 1 Specify a page of the results to get. Defaults to $this->page, table (string) Default of current pod type Table to base find() off of select (string) t. or t., d.* Fields to select from the database. The "t" prefix will reference the primary table, "d" prefixes are used for the Pod table for any WP Object and the "t" prefix references that WP Object (wp_posts, wp_terms, wp_users, wp_comments) join (string or array) null Additional table(s) to JOIN, using SQL syntax like "LEFT JOIN my_table ON my_table.id = t.id" expires (int) null Whether to cache the results or not, 0 will cache it until caches are cleared, 1+ will cache it for X amount of seconds; Default is no caching (null) cache_mode (string) cache Cache mode to use, available options are cache, transient, or site-transient

Returns

(Pods) The pod object

Examples

Example 1 <?php // Find can be called in one of three ways

// Example #1 $mypod = pods( 'mypod', $params );

// Example #2 $mypod = pods( 'mypod' )->find( $params );

// Example #3 $mypod = pods( 'mypod' ); $mypod->find( $params );

// Here's how to use find() $params = array( 'limit' => 3,
'page' => 2,
// Be sure to sanitize ANY strings going here 'where'=>"category.name = 'My Category'" );

// Run the find $mypod = pods( 'mypod', $params );

// Loop through the records returned while ( $mypod->fetch() ) { echo $mypod->display( 'name' ) . "\n"; } The above example will output: Pod Title 1 Pod Title 2 Pod Title 3 Using a variable in a where clause When the where clause must be created dynamically, a variable can be passed to it like in this example:

<?php // get value from input to a form $keyword = like_escape( pods_v_sanitized( 'keyword', 'post' ) );

// set up find parameters, where meta field title matches $keyword $params = array( 'where' => 't.post_title LIKE "%' . $keyword . '%" OR my_field.meta_value LIKE "%' . $keyword . '%"' );

//search in articles pod $pods = pods( 'articles', $params );

//loop through results if ( 0 < $pods->total() ) { while ( $pods->fetch() ) { echo $pods->display( 'issue' ); } } ?> Additional Information

Traversal notation for field names in the 'where' option