throw new \RuntimeException(sprintf('Unable to write in the cache directory (%s).', $dir));
}
$tmpFile = tempnam($dir, basename($key));
if (false !== @file_put_contents($tmpFile, $content) && @rename($tmpFile, $key)) {
@chmod($key, 0666 & ~umask());
if (self::FORCE_BYTECODE_INVALIDATION == ($this->options & self::FORCE_BYTECODE_INVALIDATION)) {
// Compile cached file into bytecode cache
if (\function_exists('opcache_invalidate') && filter_var(ini_get('opcache.enable'), FILTER_VALIDATE_BOOLEAN)) {
@opcache_invalidate($key, true);
} elseif (\function_exists('apc_compile_file')) {
apc_compile_file($key);
}
}
return;
}
throw new \RuntimeException(sprintf('Failed to write cache file "%s".', $key));
}
public function getTimestamp($key)
{
if (!file_exists($key)) {
return 0;
}
return (int) @filemtime($key);
}
}
class_alias('Twig\Cache\FilesystemCache', 'Twig_Cache_Filesystem');
if (!$this->isAutoReload() || $this->isTemplateFresh($name, $this->cache->getTimestamp($key))) {
$this->cache->load($key);
}
$source = null;
if (!class_exists($cls, false)) {
$loader = $this->getLoader();
if (!$loader instanceof SourceContextLoaderInterface) {
$source = new Source($loader->getSource($name), $name);
} else {
$source = $loader->getSourceContext($name);
}
$content = $this->compileSource($source);
if ($this->bcWriteCacheFile) {
$this->writeCacheFile($key, $content);
} else {
$this->cache->write($key, $content);
$this->cache->load($key);
}
if (!class_exists($mainCls, false)) {
/* Last line of defense if either $this->bcWriteCacheFile was used,
* $this->cache is implemented as a no-op or we have a race condition
* where the cache was cleared between the above calls to write to and load from
* the cache.
*/
eval('?>'.$content);
}
}
if (!class_exists($cls, false)) {
throw new RuntimeError(sprintf('Failed to load Twig template "%s", index "%s": cache might be corrupted.', $name, $index), -1, $source);
}
}
if (!$this->runtimeInitialized) {
$this->initRuntime();
/**
* Loads a template internal representation.
*
* This method is for internal use only and should never be called
* directly.
*
* @param string $name The template name
* @param int $index The index if it is an embedded template
*
* @return \Twig_TemplateInterface A template instance representing the given template name
*
* @throws LoaderError When the template cannot be found
* @throws RuntimeError When a previously generated cache is corrupted
* @throws SyntaxError When an error occurred during compilation
*
* @internal
*/
public function loadTemplate($name, $index = null)
{
return $this->loadClass($this->getTemplateClass($name), $name, $index);
}
/**
* @internal
*/
public function loadClass($cls, $name, $index = null)
{
$mainCls = $cls;
if (null !== $index) {
$cls .= '___'.$index;
}
if (isset($this->loadedTemplates[$cls])) {
return $this->loadedTemplates[$cls];
}
if (!class_exists($cls, false)) {
if ($this->bcGetCacheFilename) {
$key = $this->getCacheFilename($name);
} else {
*
* @param string|TemplateWrapper|\Twig\Template $name The template name
*
* @throws LoaderError When the template cannot be found
* @throws RuntimeError When a previously generated cache is corrupted
* @throws SyntaxError When an error occurred during compilation
*
* @return TemplateWrapper
*/
public function load($name)
{
if ($name instanceof TemplateWrapper) {
return $name;
}
if ($name instanceof Template) {
return new TemplateWrapper($this, $name);
}
return new TemplateWrapper($this, $this->loadTemplate($name));
}
/**
* Loads a template internal representation.
*
* This method is for internal use only and should never be called
* directly.
*
* @param string $name The template name
* @param int $index The index if it is an embedded template
*
* @return \Twig_TemplateInterface A template instance representing the given template name
*
* @throws LoaderError When the template cannot be found
* @throws RuntimeError When a previously generated cache is corrupted
* @throws SyntaxError When an error occurred during compilation
*
* @internal
*/
public function loadTemplate($name, $index = null)
}
$key = null;
$output = false;
if ( false !== $expires ) {
ksort($data);
$key = md5($file.json_encode($data));
$output = $this->get_cache($key, self::CACHEGROUP, $cache_mode);
}
if ( false === $output || null === $output ) {
$twig = $this->get_twig();
if ( strlen($file) ) {
$loader = $this->get_loader();
$result = $loader->getCacheKey($file);
do_action('timber_loader_render_file', $result);
}
$data = apply_filters('timber_loader_render_data', $data);
$data = apply_filters('timber/loader/render_data', $data, $file);
$template = $twig->load($file);
$output = $template->render($data);
}
if ( false !== $output && false !== $expires && null !== $key ) {
$this->delete_cache();
$this->set_cache($key, $output, self::CACHEGROUP, $expires, $cache_mode);
}
$output = apply_filters('timber_output', $output);
return apply_filters('timber/output', $output, $data, $file);
}
protected function delete_cache() {
Cleaner::delete_transients();
}
/**
* Get first existing template.
*
* @param array|string $templates Name(s) of the Twig template(s) to choose from.
* @return string|bool Name of chosen template, otherwise false.
if ( $via_render ) {
$file = apply_filters('timber_render_file', $file);
} else {
$file = apply_filters('timber_compile_file', $file);
}
$output = false;
if ($file !== false) {
if ( is_null($data) ) {
$data = array();
}
if ( $via_render ) {
$data = apply_filters('timber_render_data', $data);
} else {
$data = apply_filters('timber_compile_data', $data);
}
$output = $loader->render($file, $data, $expires, $cache_mode);
} else {
if ( is_array($filenames) ) {
$filenames = implode(", ", $filenames);
}
Helper::error_log( 'Error loading your template files: '.$filenames.'. Make sure one of these files exists.' );
}
do_action('timber_compile_done');
return $output;
}
/**
* Compile a string.
*
* @api
* @example
* ```php
* $data = array(
* 'username' => 'Jane Doe',
* );
$twig = $dummy_loader->get_twig();
$template = $twig->createTemplate($string);
return $template->render($data);
}
/**
* Fetch function.
*
* @api
* @param array|string $filenames Name of the Twig file to render. If this is an array of files, Timber will
* render the first file that exists.
* @param array $data Optional. An array of data to use in Twig template.
* @param bool|int $expires Optional. In seconds. Use false to disable cache altogether. When passed an
* array, the first value is used for non-logged in visitors, the second for users.
* Default false.
* @param string $cache_mode Optional. Any of the cache mode constants defined in TimberLoader.
* @return bool|string The returned output.
*/
public static function fetch( $filenames, $data = array(), $expires = false, $cache_mode = Loader::CACHE_USE_DEFAULT ) {
$output = self::compile($filenames, $data, $expires, $cache_mode, true);
$output = apply_filters('timber_compile_result', $output);
return $output;
}
/**
* Render function.
*
* Passes data to a Twig file and echoes the output.
*
* @api
* @example
* ```php
* $context = Timber::context();
*
* Timber::render( 'index.twig', $context );
* ```
* @param array|string $filenames Name of the Twig file to render. If this is an array of files, Timber will
* render the first file that exists.
* @param array $data Optional. An array of data to use in Twig template.
* @param bool|int $expires Optional. In seconds. Use false to disable cache altogether. When passed an
* Passes data to a Twig file and echoes the output.
*
* @api
* @example
* ```php
* $context = Timber::context();
*
* Timber::render( 'index.twig', $context );
* ```
* @param array|string $filenames Name of the Twig file to render. If this is an array of files, Timber will
* render the first file that exists.
* @param array $data Optional. An array of data to use in Twig template.
* @param bool|int $expires Optional. In seconds. Use false to disable cache altogether. When passed an
* array, the first value is used for non-logged in visitors, the second for users.
* Default false.
* @param string $cache_mode Optional. Any of the cache mode constants defined in TimberLoader.
* @return bool|string The echoed output.
*/
public static function render( $filenames, $data = array(), $expires = false, $cache_mode = Loader::CACHE_USE_DEFAULT ) {
$output = self::fetch($filenames, $data, $expires, $cache_mode);
echo $output;
return $output;
}
/**
* Render a string with Twig variables.
*
* @api
* @example
* ```php
* $data = array(
* 'username' => 'Jane Doe',
* );
*
* Timber::render_string( 'Hi {{ username }}, I’m a string with a custom Twig variable', $data );
* ```
* @param string $string A string with Twig variables.
* @param array $data An array of data to use in Twig template.
* @return bool|string
*/
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();
Timber::render(['single-' . $post->ID . '.html.twig', 'single-' . $post->post_type . '.html.twig', 'single.html.twig'], $context);
/**
* Filters the path of the current template before including it.
*
* @since 3.0.0
*
* @param string $template The path of the template to include.
*/
$template = apply_filters( 'template_include', $template );
if ( $template ) {
/**
* Fires immediately before including the template.
*
* @since 6.9.0
*
* @param string $template The path of the template about to be included.
*/
do_action( 'wp_before_include_template', $template );
include $template;
} elseif ( current_user_can( 'switch_themes' ) ) {
$theme = wp_get_theme();
if ( $theme->errors() ) {
wp_die( $theme->errors() );
}
}
return;
}
<?php
/**
* Loads the WordPress environment and template.
*
* @package WordPress
*/
if ( ! isset( $wp_did_header ) ) {
$wp_did_header = true;
// Load the WordPress library.
require_once __DIR__ . '/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 __DIR__ . '/wp-blog-header.php';
| Key | Value |
| TCM_PostShown | WP_Post Object ( [ID] => 1433 [post_author] => 4 [post_date] => 2020-09-17 10:37:00 [post_date_gmt] => 2020-09-17 14:37:00 [post_content] => Once an individual completes medical detox and inpatient treatment, the logical next step on the road to recovery is moving into a halfway house or sober living facility. A halfway house is essentially a home for men or women who are new to recovery and learning to stand on their own two feet. Early recovery can be a very challenging time. Not only are those who are new to sobriety learning to live a drug and alcohol-free life, but they are learning to be independent in a way they likely never deemed possible. At Riverbend Residence, we implement a strict set of rules and guidelines that were developed to help our residents maintain accountability as they navigate a sober lifestyle. Our support staff members offer guidance and assistance whenever necessary, and they are readily available all hours of the day and night to help residents through the tough times and celebrate a job well done. We always prioritize the well-being of each client, and our main goal is to help residents stay sober as they grow into the functional, happy, and productive people they were always meant to be. <img class="alignleft size-full wp-image-1434" src="https://riverbendresidence.com/wp-content/uploads/2020/09/Can-alcoholics-live-in-a-halfway-house.png" alt="Can Alcoholics Live in a Halfway House? " width="600" height="400" /> <h2>Who Is A Halfway House For?</h2> Can anyone live in a halfway house? Do you need to be an alcoholic or a drug addict to take advantage of housing situations like Riverbend Residence? Halfway houses like the ones we have found were specifically developed for men and women who are new to sobriety; who struggled with alcoholism or drug addiction and who have already completed a higher level of clinical care. Of course, there is an important distinction to make - a halfway house is for someone who is sober and who has every intention of staying sober. Halfway houses are not for people who are actively abusing alcohol or who are actively using mood or mind-altering substances of any kind. If it is suspected that one of our residents has been using drugs or alcohol, we will promptly conduct a thorough drug and alcohol screening. If any chemical substances are present in the system, we will request that the resident return to a higher level of clinical care. This is not a punishment - we never “punish” our residents. We simply want them to stay sober, and we understand that sobriety will not be achieved if substance use of any kind is condoned. At Riverbend Residence, we offer four gender-specific sober living homes - two male-exclusive and one female-exclusive. Each is located in the heart of Sussex County, New Jersey, and our halfway houses serve sober men and women in all surrounding areas. <h2>Quality Sober Living Homes for Alcoholics</h2> Our main priority is to help men and women who are new to recovery maintain sobriety while paving a solid and lasting foundation for a lifetime of fulfilling and joyous recovery. We do not simply provide men and women who have struggled with alcoholism or addiction with a safe place to live. We also offer a wide range of services to help them stay sober for years to come. Some of the service we provide include: <ul> <li>Vocational training. We teach our residents to build out their resumes and dress professionally for job interviews. We require all of our clients to get and maintain an appropriate job while slowly working towards complete financial independence.</li> <li>The further development of relapse prevention skills. We teach our residents how to manage their emotions calmly and productively, and identify and work through personal relapse triggers.</li> <li>The development of healthy interpersonal relationships. Residents will be living with like-minded men or women to whom they can relate. We help our residents further develop healthy communication skills and work through any issues that might arise in a safe and supportive environment.</li> </ul> If you would like more information on <a href="https://riverbendresidence.com/">Riverbend Residence</a> or if you would like to take a tour of our facility, please feel free to call us at <a href="tel:844-505-3447">(844) 505-3447</a> for more information around the clock. [post_title] => Can Alcoholics Live in a Halfway House? [post_excerpt] => [post_status] => publish [comment_status] => closed [ping_status] => open [post_password] => [post_name] => can-alcoholics-live-in-halfway-house [to_ping] => [pinged] => [post_modified] => 2020-09-17 10:37:00 [post_modified_gmt] => 2020-09-17 14:37:00 [post_content_filtered] => [post_parent] => 0 [guid] => https://riverbendresidence.com/?p=1433 [menu_order] => 0 [post_type] => post [post_mime_type] => [comment_count] => 0 [filter] => raw [status] => publish [id] => 1433 [slug] => can-alcoholics-live-in-halfway-house [custom] => Array ( [_edit_lock] => 1600353889:3 [_edit_last] => 3 [_thumbnail_id] => 1434 [_wp_page_template] => default [_yoast_wpseo_focuskw] => Alcoholics Live in a Halfway House [_yoast_wpseo_metadesc] => Halfway houses like the ones we have found were specifically developed for men and women who are new to sobriety and who have struggled with alcoholism. [_yoast_wpseo_linkdex] => 63 [_yoast_wpseo_content_score] => 30 [_yoast_wpseo_primary_category] => 10 [_yoast_wpseo_title] => Can Alcoholics Live in a Halfway House? | Riverbend Residence [_wp_old_date] => 2020-09-16 ) ) |
| TCM_SnippetsWrittenIds | Array ( ) |
| TCM_SnippetsWrittenMd5 | Array ( ) |
| TCM_Cache_Query_2_ | Array ( [0] => Array ( [id] => post [text] => Post (post) [name] => Post (post) ) [1] => Array ( [id] => page [text] => Page (page) [name] => Page (page) ) ) |
| Key | Value |
| SERVER_SOFTWARE | nginx |
| REQUEST_URI | /can-alcoholics-live-in-halfway-house/ |
| USER | fpm200067 |
| HOME | /home/fpm200067 |
| WPENGINE_ACCOUNT | riverbendresid |
| WPENGINE_PHPSESSIONS | on |
| WPENGINE_DB_SESSIONS | off |
| HTTP_X_WPE_SSL | 1 |
| SYSLOG_IDENT | phperr-riverbendresid |
| REQUEST_SCHEME | http |
| SERVER_PORT | 80 |
| HTTP_ACCEPT | text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 |
| HTTP_X_REAL_IP_REMOTE | 104.23.213.187 |
| HTTP_ACCEPT_LANGUAGE | en-US,en;q=0.5 |
| PHP_ADMIN_VALUE | newrelic.appname=riverbendresid; newrelic.browser_monitoring.auto_instrument=off; newrelic.enabled=off; newrelic.license=; sendmail_path=/bin/sendmail-wrapper.sh 5b7ea12d5efa8de29e9e6505a5de420da8ba2ef3 /usr/sbin/sendmail -t -i; syslog.ident=phperr-riverbendresid; |
| CONTENT_TYPE | |
| REDIRECT_STATUS | 200 |
| HTTP_CDN_LOOP | cloudflare; loops=1 |
| HTTP_CF_CONNECTING_IP | 18.97.14.86, 18.97.14.86, 18.97.14.86 |
| HTTP_X_WPENGINE_PHP_VERSION | 7.4 |
| HTTP_X_FORWARDED_PROTO | https |
| HTTP_CF_VISITOR | {\"scheme\":\"https\"} |
| SERVER_PROTOCOL | HTTP/1.1 |
| DOCUMENT_URI | /index.php |
| REQUEST_METHOD | GET |
| HTTP_CF_RAY | 9da7a2dc7ac017e5-IAD |
| HTTP_HOST | riverbendresidence.com |
| HTTP_X_WPE_INSTALL_NAME | riverbendresid |
| HTTP_X_CACHE_GROUP | normal |
| SERVER_NAME | riverbendresidence.com |
| CONTENT_LENGTH | 0 |
| HTTP_X_UA_ORIGINAL | CCBot/2.0 (https://commoncrawl.org/faq/) |
| HTTP_X_WORDPRESS_TYPE | DEFAULT |
| HTTP_CF_IPCOUNTRY | US |
| HTTP_X_WPE_LOCAL_SSL | 1 |
| HTTP_WPE_READONLY | on |
| HTTP_USER_AGENT | CCBot/2.0 (https://commoncrawl.org/faq/) |
| PHP_VALUE | upload_max_filesize=50M; post_max_size=100M; |
| PATH_INFO | |
| HTTP_X_WPE_REQUEST_ID | 7d2f326bcb1b5ff1f68ddd9363b86c0d |
| HTTP_X_IS_BOT | 1 |
| DOCUMENT_ROOT | /nas/content/live/riverbendresid |
| SCRIPT_NAME | /index.php |
| SCRIPT_FILENAME | /nas/content/live/riverbendresid/index.php |
| QUERY_STRING | |
| HTTPS | on |
| REMOTE_PORT | |
| HTTP_X_WPE_EDGE | AN |
| REMOTE_ADDR | 18.97.14.86 |
| PATH_TRANSLATED | /nas/content/live/riverbendresid/index.php |
| GATEWAY_INTERFACE | CGI/1.1 |
| HTTP_RAWHOST | riverbendresidence.com |
| HTTP_VIA | 1.1 pod-404710 (Varnish/trunk) |
| HTTP_X_FORWARDED_HOST | riverbendresidence.com |
| HTTP_ACCEPT_ENCODING | gzip |
| IS_WPE | 1 |
| SERVER_ADDR | 127.0.0.1 |
| FCGI_ROLE | RESPONDER |
| PHP_SELF | /index.php |
| REQUEST_TIME_FLOAT | 1773201458.75 |
| REQUEST_TIME | 1773201458 |
| Key | Value |
| USER | fpm200067 |
| HOME | /home/fpm200067 |
| WPENGINE_ACCOUNT | riverbendresid |
| WPENGINE_PHPSESSIONS | on |
| WPENGINE_DB_SESSIONS | off |
| HTTP_X_WPE_SSL | 1 |
| SYSLOG_IDENT | phperr-riverbendresid |
| REQUEST_URI | /can-alcoholics-live-in-halfway-house/ |
| REQUEST_SCHEME | http |
| SERVER_PORT | 80 |
| HTTP_ACCEPT | text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 |
| HTTP_X_REAL_IP_REMOTE | 104.23.213.187 |
| HTTP_ACCEPT_LANGUAGE | en-US,en;q=0.5 |
| PHP_ADMIN_VALUE | newrelic.appname=riverbendresid; newrelic.browser_monitoring.auto_instrument=off; newrelic.enabled=off; newrelic.license=; sendmail_path=/bin/sendmail-wrapper.sh 5b7ea12d5efa8de29e9e6505a5de420da8ba2ef3 /usr/sbin/sendmail -t -i; syslog.ident=phperr-riverbendresid; |
| CONTENT_TYPE | |
| REDIRECT_STATUS | 200 |
| SERVER_SOFTWARE | nginx |
| HTTP_CDN_LOOP | cloudflare; loops=1 |
| HTTP_CF_CONNECTING_IP | 18.97.14.86, 18.97.14.86, 18.97.14.86 |
| HTTP_X_WPENGINE_PHP_VERSION | 7.4 |
| HTTP_X_FORWARDED_PROTO | https |
| HTTP_CF_VISITOR | {"scheme":"https"} |
| SERVER_PROTOCOL | HTTP/1.1 |
| DOCUMENT_URI | /index.php |
| REQUEST_METHOD | GET |
| HTTP_CF_RAY | 9da7a2dc7ac017e5-IAD |
| HTTP_HOST | riverbendresidence.com |
| HTTP_X_WPE_INSTALL_NAME | riverbendresid |
| HTTP_X_CACHE_GROUP | normal |
| SERVER_NAME | riverbendresidence.com |
| CONTENT_LENGTH | 0 |
| HTTP_X_UA_ORIGINAL | CCBot/2.0 (https://commoncrawl.org/faq/) |
| HTTP_X_WORDPRESS_TYPE | DEFAULT |
| HTTP_CF_IPCOUNTRY | US |
| HTTP_X_WPE_LOCAL_SSL | 1 |
| HTTP_WPE_READONLY | on |
| HTTP_USER_AGENT | CCBot/2.0 (https://commoncrawl.org/faq/) |
| PHP_VALUE | upload_max_filesize=50M; post_max_size=100M; |
| PATH_INFO | |
| HTTP_X_WPE_REQUEST_ID | 7d2f326bcb1b5ff1f68ddd9363b86c0d |
| HTTP_X_IS_BOT | 1 |
| DOCUMENT_ROOT | /nas/content/live/riverbendresid |
| SCRIPT_NAME | /index.php |
| SCRIPT_FILENAME | /nas/content/live/riverbendresid/index.php |
| QUERY_STRING | |
| HTTPS | on |
| REMOTE_PORT | |
| HTTP_X_WPE_EDGE | AN |
| REMOTE_ADDR | 18.97.14.86 |
| PATH_TRANSLATED | /nas/content/live/riverbendresid/index.php |
| GATEWAY_INTERFACE | CGI/1.1 |
| HTTP_RAWHOST | riverbendresidence.com |
| HTTP_VIA | 1.1 pod-404710 (Varnish/trunk) |
| HTTP_X_FORWARDED_HOST | riverbendresidence.com |
| HTTP_ACCEPT_ENCODING | gzip |
| IS_WPE | 1 |
| SERVER_ADDR | 127.0.0.1 |
| FCGI_ROLE | RESPONDER |
| PHP_SELF | /index.php |
| REQUEST_TIME_FLOAT | 1773201458.75 |
| REQUEST_TIME | 1773201458 |