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);
*/
$template = apply_filters( 'template_include', $template );
$is_stringy = is_string( $template ) || ( is_object( $template ) && method_exists( $template, '__toString' ) );
$template = $is_stringy ? realpath( (string) $template ) : null;
if (
is_string( $template ) &&
( str_ends_with( $template, '.php' ) || str_ends_with( $template, '.html' ) ) &&
is_file( $template ) &&
is_readable( $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] => 1320 [post_author] => 4 [post_date] => 2020-08-27 11:30:04 [post_date_gmt] => 2020-08-27 15:30:04 [post_content] => In most cases, entering a sober living home directly after inpatient treatment means the difference between staying sober and relapsing after a short period. Sober living housing allows men and women who are new to recovery the opportunity to live in a structured housing environment with other like-minded individuals, ultimately encouraging and supporting those who are in the same boat while receiving additional encouragement and support. At Riverbend Residence, we have four gender-specific sober living houses in the heart of Sussex County, New Jersey. Our luxury-style houses offer all the comforts of home along with numerous additional, state-of-the-art amenities, all geared towards resident comfort and long-term healing. We enforce several rules and guidelines which are geared towards helping men and women stay sober while developing the vital life skills they need to go on and lead healthy, productive, and substance-free lives. <img class="alignleft size-full wp-image-1321" src="https://riverbendresidence.com/wp-content/uploads/2020/08/How-do-you-get-into-a-sober-living-house.jpg" alt="How do you get into a sober living house? " width="600" height="400" /> <h2>Getting Into a Sober Living House</h2> If you are currently in a higher level of clinical care, you have recently completed an inpatient treatment program or you are simply looking ahead, you might be wondering how to get into a sober living house. What steps do you need to take? Do you need to complete inpatient addiction treatment before you become eligible? How much will you have to pay - will you have to pay for the cost of sober living out-of-pocket, or will health insurance cover the cost? How often do you pay? Will you get accepted no matter what, or will you have to undergo some sort of assessment before you can move in? Fortunately, the admissions process is relatively straightforward. Below we have detailed the steps you will take when considering Riverbend Residence as a sober living housing option. These are the steps you will take when deciding to move into a sober living housing facility like Riverbend Residence: <ol> <li><strong>Decide that sober living is right for you.</strong> If you recently completed inpatient treatment, this step is a no-brainer. If you are unsure as to whether sober living is right for you, simply give our Treatment Advisors a call and they will conduct a brief assessment over the phone.</li> <li><strong>Set up an in-person tour.</strong> This will allow you to take a closer look at the residence itself and ask any questions you may have.</li> <li><strong>Once you have decided that Riverbend Residence is a good fit, set up a time for intake.</strong> Our Admissions Counselors will gladly walk you through this process.</li> <li><strong>Move-in.</strong> You will be assigned a private or semi-private bedroom, which is fully furnished and completely ready for you to move into and get settled.</li> <li><strong>As far as payment goes, rent will be accepted on a weekly or monthly basis, depending on your capability.</strong> In the vast majority of instances, rent will be paid out-of-pocket. We work closely with our residents in helping them find a job and become financially independent over time, understanding that they might require some vocational assistance at first.</li> <li><strong>The length of the stay will depend on the unique and individualized needs of each resident.</strong> Most residents will stay for between six months and a full year.</li> </ol> <h2>Riverbend Residence - Comprehensive Care</h2> At <a href="https://riverbendresidence.com/">Riverbend Residence</a>, we are far more than just a place for newly sober individuals to rest their heads. We offer a continuum of clinical care, and we are completely dedicated to helping men and women develop the crucial life skills and relapse prevention skills they need before transitioning back into fully independent living. If you have recently completed inpatient treatment and are looking for the next appropriate level of clinical care, look no further than Riverbend Residence. We are more than happy to set up an in-person tour so that you can see our houses firsthand, and our team of Admissions Counselors will work with you to develop an intake date as soon as you decide to join us on the road to recovery. [post_title] => How Do You Get Into a Sober Living House [post_excerpt] => [post_status] => publish [comment_status] => closed [ping_status] => open [post_password] => [post_name] => how-do-you-get-into-sober-living-house [to_ping] => [pinged] => [post_modified] => 2021-02-14 16:33:43 [post_modified_gmt] => 2021-02-14 21:33:43 [post_content_filtered] => [post_parent] => 0 [guid] => https://riverbendresidence.com/?p=1320 [menu_order] => 0 [post_type] => post [post_mime_type] => [comment_count] => 0 [filter] => raw [status] => publish [id] => 1320 [slug] => how-do-you-get-into-sober-living-house [custom] => Array ( [_edit_lock] => 1613403079:3 [_edit_last] => 4 [_thumbnail_id] => 1321 [_wp_page_template] => default [_yoast_wpseo_focuskw] => get into a sober living house [_yoast_wpseo_metadesc] => Entering a sober living home directly after inpatient treatment means the difference between staying sober and relapsing after a short period. [_yoast_wpseo_linkdex] => 71 [_yoast_wpseo_content_score] => 30 [_yoast_wpseo_primary_category] => 10 [_yoast_wpseo_title] => How do you get into a sober living house? | Riverbend Residence [_wp_old_date] => 2020-08-26 [_yoast_wpseo_estimated-reading-time-minutes] => ) ) |
| 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 | /how-do-you-get-into-sober-living-house/ |
| USER | fpm200067 |
| HOME | /home/fpm200067 |
| WPENGINE_ACCOUNT | riverbendresid |
| WPENGINE_PHPSESSIONS | on |
| WPENGINE_DB_SESSIONS | off |
| HTTP_X_WPE_EDGE | AN |
| HTTP_ACCEPT_ENCODING | gzip |
| HTTP_VIA | 1.1 pod-404710 (Varnish/8.0) |
| HTTP_X_EFPC_ENABLED | true |
| REMOTE_PORT | |
| HTTP_HOST | riverbendresidence.com |
| PHP_VALUE | upload_max_filesize=50M; post_max_size=100M; |
| SCRIPT_NAME | /index.php |
| HTTP_X_WPENGINE_PHP_VERSION | 7.4 |
| HTTP_CF_VISITOR | {\"scheme\":\"https\"} |
| HTTP_X_REAL_IP_REMOTE | 172.71.23.185 |
| HTTP_CF_VERIFIED_BOT | true |
| REDIRECT_STATUS | 200 |
| HTTP_X_UA_ORIGINAL | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
| DOCUMENT_ROOT | /nas/content/live/riverbendresid |
| HTTP_X_CACHE_GROUP | normal |
| HTTP_X_FORWARDED_PROTO | https |
| HTTP_CF_THREAT_SCORE | 0 |
| HTTP_CF_CONNECTING_IP | 216.73.217.0, 216.73.217.0, 216.73.217.0 |
| 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; |
| DOCUMENT_URI | /index.php |
| IS_WPE | 1 |
| HTTP_CF_JA4 | t13d1011h2_61a7ad8aa9b6_3fcd1a44f3e3 |
| HTTP_X_WPE_SSL | 1 |
| CONTENT_LENGTH | 0 |
| HTTP_CF_JA3_HASH | 75509e976eb5cb29940ef12f3b9992b6 |
| HTTP_X_WPE_LOCAL_SSL | 1 |
| SERVER_PROTOCOL | HTTP/1.1 |
| PATH_INFO | |
| CONTENT_TYPE | |
| SERVER_PORT | 80 |
| HTTP_CF_RAY | a362ff861bf80851-ATL |
| HTTP_WPE_READONLY | on |
| HTTP_CF_IPCOUNTRY | US |
| QUERY_STRING | |
| SYSLOG_IDENT | phperr-riverbendresid |
| HTTP_X_WPE_REQUEST_ID | 7a2dfb339eebfe97f44058b8f1e4491f |
| HTTP_X_IS_BOT | 1 |
| PATH_TRANSLATED | /nas/content/live/riverbendresid/index.php |
| HTTPS | on |
| HTTP_X_WPE_CLUSTER_ID | 404710 |
| HTTP_X_WORDPRESS_TYPE | DEFAULT |
| REQUEST_METHOD | GET |
| SERVER_ADDR | 127.0.0.1 |
| HTTP_X_FORWARDED_HOST | riverbendresidence.com |
| HTTP_CF_BOT_SCORE | 1 |
| SERVER_NAME | riverbendresidence.com |
| REMOTE_ADDR | 216.73.217.0 |
| REQUEST_SCHEME | http |
| HTTP_USER_AGENT | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
| HTTP_X_WPE_INSTALL_NAME | riverbendresid |
| HTTP_RAWHOST | riverbendresidence.com |
| SCRIPT_FILENAME | /nas/content/live/riverbendresid/index.php |
| HTTP_ACCEPT | */* |
| HTTP_CDN_LOOP | cloudflare; loops=1 |
| GATEWAY_INTERFACE | CGI/1.1 |
| FCGI_ROLE | RESPONDER |
| PHP_SELF | /index.php |
| REQUEST_TIME_FLOAT | 1788587864.07 |
| REQUEST_TIME | 1788587864 |
| Key | Value |
| USER | fpm200067 |
| HOME | /home/fpm200067 |
| WPENGINE_ACCOUNT | riverbendresid |
| WPENGINE_PHPSESSIONS | on |
| WPENGINE_DB_SESSIONS | off |
| HTTP_X_WPE_EDGE | AN |
| HTTP_ACCEPT_ENCODING | gzip |
| HTTP_VIA | 1.1 pod-404710 (Varnish/8.0) |
| HTTP_X_EFPC_ENABLED | true |
| REMOTE_PORT | |
| HTTP_HOST | riverbendresidence.com |
| PHP_VALUE | upload_max_filesize=50M; post_max_size=100M; |
| SCRIPT_NAME | /index.php |
| HTTP_X_WPENGINE_PHP_VERSION | 7.4 |
| HTTP_CF_VISITOR | {"scheme":"https"} |
| HTTP_X_REAL_IP_REMOTE | 172.71.23.185 |
| HTTP_CF_VERIFIED_BOT | true |
| REDIRECT_STATUS | 200 |
| HTTP_X_UA_ORIGINAL | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
| DOCUMENT_ROOT | /nas/content/live/riverbendresid |
| REQUEST_URI | /how-do-you-get-into-sober-living-house/ |
| SERVER_SOFTWARE | nginx |
| HTTP_X_CACHE_GROUP | normal |
| HTTP_X_FORWARDED_PROTO | https |
| HTTP_CF_THREAT_SCORE | 0 |
| HTTP_CF_CONNECTING_IP | 216.73.217.0, 216.73.217.0, 216.73.217.0 |
| 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; |
| DOCUMENT_URI | /index.php |
| IS_WPE | 1 |
| HTTP_CF_JA4 | t13d1011h2_61a7ad8aa9b6_3fcd1a44f3e3 |
| HTTP_X_WPE_SSL | 1 |
| CONTENT_LENGTH | 0 |
| HTTP_CF_JA3_HASH | 75509e976eb5cb29940ef12f3b9992b6 |
| HTTP_X_WPE_LOCAL_SSL | 1 |
| SERVER_PROTOCOL | HTTP/1.1 |
| PATH_INFO | |
| CONTENT_TYPE | |
| SERVER_PORT | 80 |
| HTTP_CF_RAY | a362ff861bf80851-ATL |
| HTTP_WPE_READONLY | on |
| HTTP_CF_IPCOUNTRY | US |
| QUERY_STRING | |
| SYSLOG_IDENT | phperr-riverbendresid |
| HTTP_X_WPE_REQUEST_ID | 7a2dfb339eebfe97f44058b8f1e4491f |
| HTTP_X_IS_BOT | 1 |
| PATH_TRANSLATED | /nas/content/live/riverbendresid/index.php |
| HTTPS | on |
| HTTP_X_WPE_CLUSTER_ID | 404710 |
| HTTP_X_WORDPRESS_TYPE | DEFAULT |
| REQUEST_METHOD | GET |
| SERVER_ADDR | 127.0.0.1 |
| HTTP_X_FORWARDED_HOST | riverbendresidence.com |
| HTTP_CF_BOT_SCORE | 1 |
| SERVER_NAME | riverbendresidence.com |
| REMOTE_ADDR | 216.73.217.0 |
| REQUEST_SCHEME | http |
| HTTP_USER_AGENT | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
| HTTP_X_WPE_INSTALL_NAME | riverbendresid |
| HTTP_RAWHOST | riverbendresidence.com |
| SCRIPT_FILENAME | /nas/content/live/riverbendresid/index.php |
| HTTP_ACCEPT | */* |
| HTTP_CDN_LOOP | cloudflare; loops=1 |
| GATEWAY_INTERFACE | CGI/1.1 |
| FCGI_ROLE | RESPONDER |
| PHP_SELF | /index.php |
| REQUEST_TIME_FLOAT | 1788587864.07 |
| REQUEST_TIME | 1788587864 |