* @param mixed $query
* @param string|array $PostClass
* @return \Timber\Post|bool
*/
public static function get_post( $query = false, $PostClass = '\Timber\Post' ) {
// if a post id is passed, grab the post directly
if ( is_numeric($query) ) {
$post_type = get_post_type($query);
$PostClass = PostGetter::get_post_class($post_type, $PostClass);
$post = new $PostClass($query);
// get the latest revision if we're dealing with a preview
$posts = PostCollection::maybe_set_preview(array($post));
if ( $post = reset($posts) ) {
return $post;
}
}
$posts = self::get_posts($query, $PostClass);
if ( $post = reset($posts) ) {
return $post;
}
return false;
}
/**
* get_post_id_by_name($post_name)
* @internal
* @since 1.5.0
* @param string $post_name
* @return int
*/
public static function get_post_id_by_name( $post_name ) {
global $wpdb;
$query = $wpdb->prepare("SELECT ID FROM $wpdb->posts WHERE post_name = %s LIMIT 1", $post_name);
$result = $wpdb->get_row($query);
if ( !$result ) {
return null;
}
* @param mixed $query
* @param string|array $PostClass
* @return \Timber\Post|bool
*/
public static function get_post( $query = false, $PostClass = '\Timber\Post' ) {
// if a post id is passed, grab the post directly
if ( is_numeric($query) ) {
$post_type = get_post_type($query);
$PostClass = PostGetter::get_post_class($post_type, $PostClass);
$post = new $PostClass($query);
// get the latest revision if we're dealing with a preview
$posts = PostCollection::maybe_set_preview(array($post));
if ( $post = reset($posts) ) {
return $post;
}
}
$posts = self::get_posts($query, $PostClass);
if ( $post = reset($posts) ) {
return $post;
}
return false;
}
/**
* get_post_id_by_name($post_name)
* @internal
* @since 1.5.0
* @param string $post_name
* @return int
*/
public static function get_post_id_by_name( $post_name ) {
global $wpdb;
$query = $wpdb->prepare("SELECT ID FROM $wpdb->posts WHERE post_name = %s LIMIT 1", $post_name);
$result = $wpdb->get_row($query);
if ( !$result ) {
return null;
}
define('TIMBER_LOADED', true);
}
}
/* Post Retrieval Routine
================================ */
/**
* Get a post by post ID or query (as a query string or an array of arguments).
* But it's also cool
*
* @api
* @param mixed $query Optional. Post ID or query (as query string or an array of arguments for
* WP_Query). If a query is provided, only the first post of the result will be
* returned. Default false.
* @param string|array $PostClass Optional. Class to use to wrap the returned post object. Default 'Timber\Post'.
* @return \Timber\Post|bool Timber\Post object if a post was found, false if no post was found.
*/
public static function get_post( $query = false, $PostClass = 'Timber\Post' ) {
return PostGetter::get_post($query, $PostClass);
}
/**
* Get posts.
* @api
* @example
* ```php
* $posts = Timber::get_posts();
* $posts = Timber::get_posts('post_type = article')
* $posts = Timber::get_posts(array('post_type' => 'article', 'category_name' => 'sports')); // uses wp_query format.
* $posts = Timber::get_posts('post_type=any', array('portfolio' => 'MyPortfolioClass', 'alert' => 'MyAlertClass')); //use a classmap for the $PostClass
* ```
* @param mixed $query
* @param string|array $PostClass
* @return array|bool|null
*/
public static function get_posts( $query = false, $PostClass = 'Timber\Post', $return_collection = false ) {
return PostGetter::get_posts($query, $PostClass, $return_collection);
}
defined('ABSPATH') or die;
use Timber\Timber;
/*
* The Template for displaying all single posts
*/
$gantry = Gantry\Framework\Gantry::instance();
$theme = $gantry['theme'];
// We need to render contents of <head> before plugin content gets added.
$context = Timber::get_context();
$context['page_head'] = $theme->render('partials/page_head.html.twig', $context);
$post = Timber::query_post();
$context['post'] = $post;
$context['wp_title'] .= ' - ' . $post->title();
$theid = get_field('post_reference',$data["post"]->ID);
$context['theparent'] = Timber::get_post($theid);
// $postcat = get_the_category( $post->ID );
// $results = Timber::get_posts(array('category_name' => $postcat[0]->slug, 'posts_per_page' => -1));
// $context['results'] = $results;
$thenext = get_next_post( true, '', 'category' );
$theprev = get_previous_post( true, '', 'category' );
$context['thenext'] = $thenext->guid;
$context['theprev'] = $theprev->guid;
Timber::render(['single-' . $post->ID . '.html.twig', 'single-' . $post->post_type . '.html.twig', 'single.html.twig'], $context);
elseif ( is_single() && $template = get_single_template() ) :
elseif ( is_page() && $template = get_page_template() ) :
elseif ( is_singular() && $template = get_singular_template() ) :
elseif ( is_category() && $template = get_category_template() ) :
elseif ( is_tag() && $template = get_tag_template() ) :
elseif ( is_author() && $template = get_author_template() ) :
elseif ( is_date() && $template = get_date_template() ) :
elseif ( is_archive() && $template = get_archive_template() ) :
else :
$template = get_index_template();
endif;
/**
* Filters the path of the current template before including it.
*
* @since 3.0.0
*
* @param string $template The path of the template to include.
*/
if ( $template = apply_filters( 'template_include', $template ) ) {
include( $template );
} elseif ( current_user_can( 'switch_themes' ) ) {
$theme = wp_get_theme();
if ( $theme->errors() ) {
wp_die( $theme->errors() );
}
}
return;
endif;
<?php
/**
* Loads the WordPress environment and template.
*
* @package WordPress
*/
if ( !isset($wp_did_header) ) {
$wp_did_header = true;
// Load the WordPress library.
require_once( dirname(__FILE__) . '/wp-load.php' );
// Set up the WordPress query.
wp();
// Load the theme template.
require_once( ABSPATH . WPINC . '/template-loader.php' );
}
<?php
/**
* Front to the WordPress application. This file doesn't do anything, but loads
* wp-blog-header.php which does and tells WordPress to load the theme.
*
* @package WordPress
*/
/**
* Tells WordPress to load the WordPress theme and output it.
*
* @var bool
*/
define('WP_USE_THEMES', true);
/** Loads the WordPress Environment and Template */
require( dirname( __FILE__ ) . '/wp-blog-header.php' );
| Key | Value |
| SERVER_SOFTWARE | Apache |
| REQUEST_URI | /uncategorized/the-good-the-poor-and-paper-composing-support/ |
| REDIRECT_REDIRECT_UNIQUE_ID | aUN5p5faetvCGWeTYS73FwAAABM |
| REDIRECT_REDIRECT_WAAS_MODE | 0 |
| REDIRECT_REDIRECT_SCRIPT_URL | /uncategorized/the-good-the-poor-and-paper-composing-support/ |
| REDIRECT_REDIRECT_SCRIPT_URI | http://fsi-worldwide.com/uncategorized/the-good-the-poor-and-paper-composing-support/ |
| REDIRECT_REDIRECT_DOCUMENT_ROOT | /kunden/homepages/4/d75936541/htdocs/PEFSIWebsite |
| REDIRECT_REDIRECT_UI_SUEXEC_DEFAULT_CHROOT_ID | 14 |
| REDIRECT_REDIRECT_UI_SUEXEC_FSTATD_UNIXSOCKET | /run/ui-fstatd.suexec.socket |
| REDIRECT_REDIRECT_UI_SUEXEC_STATISTICS_UNIXSOCKET | /homepages/sclientMF/http.sock.bin |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_CPU | 60 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_MEM | 896 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_PROCSOFT | 25 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_PROCHARD | 37 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_JIMDO | 800 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_CPU_JIMDO | 60 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_MEM_JIMDO | 768 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_PROCSOFT_JIMDO | 24 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_PROCHARD_JIMDO | 24 |
| REDIRECT_REDIRECT_STATUS | 200 |
| REDIRECT_UNIQUE_ID | aUN5p5faetvCGWeTYS73FwAAABM |
| REDIRECT_SCRIPT_URL | /uncategorized/the-good-the-poor-and-paper-composing-support/ |
| REDIRECT_SCRIPT_URI | http://fsi-worldwide.com/uncategorized/the-good-the-poor-and-paper-composing-support/ |
| REDIRECT_DOCUMENT_ROOT | /kunden/homepages/4/d75936541/htdocs/PEFSIWebsite |
| REDIRECT_HANDLER | x-mapp-php5.5 |
| REDIRECT_STATUS | 200 |
| UNIQUE_ID | aUN5p5faetvCGWeTYS73FwAAABM |
| SCRIPT_URL | /uncategorized/the-good-the-poor-and-paper-composing-support/ |
| SCRIPT_URI | http://fsi-worldwide.com/uncategorized/the-good-the-poor-and-paper-composing-support/ |
| HTTP_HOST | fsi-worldwide.com |
| HTTP_X_FORWARDED_FOR | 10.3.33.218 |
| HTTP_ACCEPT | */* |
| HTTP_USER_AGENT | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
| HTTP_ACCEPT_ENCODING | gzip, br, zstd, deflate |
| HTTP_REFERER | http://fsi-worldwide.com/?p=9890 |
| HTTP_VIA | 1.1 squid-proxy-5b5d847c96-vdpc7 (squid/6.13) |
| HTTP_CACHE_CONTROL | max-age=259200 |
| PATH | /bin:/usr/bin |
| SERVER_SIGNATURE | |
| SERVER_NAME | fsi-worldwide.com |
| SERVER_ADDR | 82.165.86.220 |
| SERVER_PORT | 80 |
| REMOTE_ADDR | 216.73.216.209 |
| DOCUMENT_ROOT | /kunden/homepages/4/d75936541/htdocs/PEFSIWebsite |
| REQUEST_SCHEME | http |
| CONTEXT_PREFIX | /system-bin/ |
| CONTEXT_DOCUMENT_ROOT | /kunden/usr/lib/cgi-bin/ |
| SERVER_ADMIN | webmaster@fsi-worldwide.com |
| SCRIPT_FILENAME | /kunden/homepages/4/d75936541/htdocs/PEFSIWebsite/index.php |
| REMOTE_PORT | 34462 |
| REDIRECT_URL | /index.php |
| GATEWAY_INTERFACE | CGI/1.1 |
| SERVER_PROTOCOL | HTTP/1.1 |
| REQUEST_METHOD | GET |
| QUERY_STRING | |
| SCRIPT_NAME | /index.php |
| STATUS | 200 |
| ORIG_PATH_INFO | /index.php |
| ORIG_PATH_TRANSLATED | /kunden/homepages/4/d75936541/htdocs/PEFSIWebsite/index.php |
| PHP_SELF | /index.php |
| REQUEST_TIME_FLOAT | 1766029735.8864 |
| REQUEST_TIME | 1766029735 |
| argv | Array ( ) |
| argc | 0 |
| Key | Value |
| REDIRECT_REDIRECT_UNIQUE_ID | aUN5p5faetvCGWeTYS73FwAAABM |
| REDIRECT_REDIRECT_WAAS_MODE | 0 |
| REDIRECT_REDIRECT_SCRIPT_URL | /uncategorized/the-good-the-poor-and-paper-composing-support/ |
| REDIRECT_REDIRECT_SCRIPT_URI | http://fsi-worldwide.com/uncategorized/the-good-the-poor-and-paper-composing-support/ |
| REDIRECT_REDIRECT_DOCUMENT_ROOT | /kunden/homepages/4/d75936541/htdocs/PEFSIWebsite |
| REDIRECT_REDIRECT_UI_SUEXEC_DEFAULT_CHROOT_ID | 14 |
| REDIRECT_REDIRECT_UI_SUEXEC_FSTATD_UNIXSOCKET | /run/ui-fstatd.suexec.socket |
| REDIRECT_REDIRECT_UI_SUEXEC_STATISTICS_UNIXSOCKET | /homepages/sclientMF/http.sock.bin |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_CPU | 60 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_MEM | 896 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_PROCSOFT | 25 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_PROCHARD | 37 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_JIMDO | 800 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_CPU_JIMDO | 60 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_MEM_JIMDO | 768 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_PROCSOFT_JIMDO | 24 |
| REDIRECT_REDIRECT_DBENTRY__RSCLVL_PROCHARD_JIMDO | 24 |
| REDIRECT_REDIRECT_STATUS | 200 |
| REDIRECT_UNIQUE_ID | aUN5p5faetvCGWeTYS73FwAAABM |
| REDIRECT_SCRIPT_URL | /uncategorized/the-good-the-poor-and-paper-composing-support/ |
| REDIRECT_SCRIPT_URI | http://fsi-worldwide.com/uncategorized/the-good-the-poor-and-paper-composing-support/ |
| REDIRECT_DOCUMENT_ROOT | /kunden/homepages/4/d75936541/htdocs/PEFSIWebsite |
| REDIRECT_HANDLER | x-mapp-php5.5 |
| REDIRECT_STATUS | 200 |
| UNIQUE_ID | aUN5p5faetvCGWeTYS73FwAAABM |
| SCRIPT_URL | /uncategorized/the-good-the-poor-and-paper-composing-support/ |
| SCRIPT_URI | http://fsi-worldwide.com/uncategorized/the-good-the-poor-and-paper-composing-support/ |
| HTTP_HOST | fsi-worldwide.com |
| HTTP_X_FORWARDED_FOR | 10.3.33.218 |
| HTTP_ACCEPT | */* |
| HTTP_USER_AGENT | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
| HTTP_ACCEPT_ENCODING | gzip, br, zstd, deflate |
| HTTP_REFERER | http://fsi-worldwide.com/?p=9890 |
| HTTP_VIA | 1.1 squid-proxy-5b5d847c96-vdpc7 (squid/6.13) |
| HTTP_CACHE_CONTROL | max-age=259200 |
| PATH | /bin:/usr/bin |
| SERVER_SIGNATURE | |
| SERVER_SOFTWARE | Apache |
| SERVER_NAME | fsi-worldwide.com |
| SERVER_ADDR | 82.165.86.220 |
| SERVER_PORT | 80 |
| REMOTE_ADDR | 216.73.216.209 |
| DOCUMENT_ROOT | /kunden/homepages/4/d75936541/htdocs/PEFSIWebsite |
| REQUEST_SCHEME | http |
| CONTEXT_PREFIX | /system-bin/ |
| CONTEXT_DOCUMENT_ROOT | /kunden/usr/lib/cgi-bin/ |
| SERVER_ADMIN | webmaster@fsi-worldwide.com |
| SCRIPT_FILENAME | /kunden/homepages/4/d75936541/htdocs/PEFSIWebsite/index.php |
| REMOTE_PORT | 34462 |
| REDIRECT_URL | /index.php |
| GATEWAY_INTERFACE | CGI/1.1 |
| SERVER_PROTOCOL | HTTP/1.1 |
| REQUEST_METHOD | GET |
| QUERY_STRING | |
| REQUEST_URI | /uncategorized/the-good-the-poor-and-paper-composing-support/ |
| SCRIPT_NAME | /index.php |
| STATUS | 200 |
| ORIG_PATH_INFO | /index.php |
| ORIG_PATH_TRANSLATED | /kunden/homepages/4/d75936541/htdocs/PEFSIWebsite/index.php |