/* * Plugin Name: APCu Object Cache * Description: APCu backend for the WP Object Cache. * Based on Plugin named APCu Object Cache Backend * Plugin URI: https://wordpress.org/plugins/apcu/ * Author: Pierre Schmitz * Author URI: https://pierre-schmitz.com/ * Plugin URI: https://wordpress.org/plugins/apcu/ * * * @Authors James Dugger, Jonathan Bardo * @copyright 2017 GoDaddy Inc. 14455 N. Hayden Road Scottsdale, Arizona */ $oc_logged_in = false; foreach ( $_COOKIE as $k => $v ) { if ( preg_match( '/^comment_author|wordpress_logged_in_[a-f0-9]+|woocommerce_items_in_cart|PHPSESSID_|edd_wp_session|edd_items_in_cartcc_cart_key|ccm_token/', $k ) ) { $oc_logged_in = true; break; } } $oc_blocked_page = ( defined( 'WP_ADMIN' ) || defined( 'DOING_AJAX' ) || defined( 'XMLRPC_REQUEST' ) || 'wp-login.php' === basename( $_SERVER['SCRIPT_FILENAME'] ) ); function wpaas_is_using_apcu() { return version_compare( PHP_VERSION, '5.6.0', '>=' ) && function_exists( 'apcu_fetch' ); } if ( 'cli' !== php_sapi_name() && ! $oc_logged_in && ! $oc_blocked_page && wpaas_is_using_apcu() ) : /** * Save the transients to the DB. The explanation is a bit too long * for code. The tl;dr of it is that we don't have a single 'fast cache' * source yet (like memcached) and so some long lived items like transients * are still best cached in the db and then brought back into APC * * @param string $transient * @param mixed $value * @param int $expire * @param boolean $site = false * * @return bool */ function wpaas_save_transient( $transient, $value, $expire, $site = false ) { global $wp_object_cache, $wpdb; // The 'special' transient option names $transient_timeout = ( $site ? '_site' : '' ) . '_transient_timeout_' . $transient; $transient = ( $site ? '_site' : '' ) . '_transient_' . $transient; // Cap expiration at 24 hours to avoid littering the DB if ( $expire == 0 ) { $expire = 24 * 60 * 60; } // Save to object cache $wp_object_cache->set( $transient, $value, 'options', $expire ); $wp_object_cache->set( $transient_timeout, time() + $expire, 'options', $expire ); // Update alloptions $alloptions = $wp_object_cache->get( 'alloptions', 'options' ); $alloptions[ $transient ] = $value; $alloptions[ $transient_timeout ] = time() + $expire; $wp_object_cache->set( 'alloptions', $alloptions, 'options' ); // Use the normal update option logic if ( ! empty( $wpdb ) && $wpdb instanceof wpdb ) { $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); if ( $site && is_multisite() ) { $wpdb->query( $wpdb->prepare( "INSERT INTO `{$wpdb->sitemeta}` ( `option_name`, `option_value`, `autoload` ) VALUES ( %s, UNIX_TIMESTAMP( NOW() ) + %d, 'yes' ) ON DUPLICATE KEY UPDATE `option_name` = VALUES ( `option_name` ), `option_value` = VALUES ( `option_value` ), `autoload` = VALUES ( `autoload` );", $transient_timeout, $expire ) ); $wpdb->query( $wpdb->prepare( "INSERT INTO `{$wpdb->sitemeta}` ( `option_name`, `option_value`, `autoload` ) VALUES ( %s, %s, 'no' ) ON DUPLICATE KEY UPDATE `option_name` = VALUES ( `option_name` ), `option_value` = VALUES ( `option_value` ), `autoload` = VALUES ( `autoload` );", $transient, maybe_serialize( $value ) ) ); } else { $wpdb->query( $wpdb->prepare( "INSERT INTO `{$wpdb->options}` (`option_name`, `option_value`, `autoload`) VALUES ( %s, UNIX_TIMESTAMP( NOW() ) + %d, 'yes' ) ON DUPLICATE KEY UPDATE `option_name` = VALUES ( `option_name` ), `option_value` = VALUES ( `option_value` ), `autoload` = VALUES ( `autoload` );", $transient_timeout, $expire ) ); $wpdb->query( $wpdb->prepare( "INSERT INTO `{$wpdb->options}` (`option_name`, `option_value`, `autoload`) VALUES ( %s, %s, 'no' ) ON DUPLICATE KEY UPDATE `option_name` = VALUES ( `option_name` ), `option_value` = VALUES ( `option_value` ), `autoload` = VALUES ( `autoload` );", $transient, maybe_serialize( $value ) ) ); } $wpdb->suppress_errors( $flag ); } return true; } function wpaas_prune_transients() { global $wpdb; if ( ! empty( $wpdb ) && $wpdb instanceof wpdb && function_exists( 'is_main_site' ) && function_exists( 'is_main_network' ) ) { $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); // Lifted straight from schema.php // Deletes all expired transients. // The multi-table delete syntax is used to delete the transient record from table a, // and the corresponding transient_timeout record from table b. $time = time(); $wpdb->query( "DELETE a, b FROM $wpdb->options a, $wpdb->options b WHERE a.option_name LIKE '\_transient\_%' AND a.option_name NOT LIKE '\_transient\_timeout\_%' AND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) ) AND b.option_value < $time" ); if ( is_main_site() && is_main_network() ) { $wpdb->query( "DELETE a, b FROM $wpdb->options a, $wpdb->options b WHERE a.option_name LIKE '\_site\_transient\_%' AND a.option_name NOT LIKE '\_site\_transient\_timeout\_%' AND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) ) AND b.option_value < $time" ); } $wpdb->suppress_errors( $flag ); } } /** * If another cache was flushed or updated, sync across all servers / processes using * the database as the authority. This uses the database as the authority for timestamps * as well to avoid drift between servers. * @return void */ function wpaas_init_sync_cache() { global $wpdb; if ( empty( $wpdb ) || ! ( $wpdb instanceof wpdb ) ) { return; } $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); $result = $wpdb->get_results( "SELECT option_name, option_value FROM `{$wpdb->options}` WHERE option_name = 'gd_system_last_cache_flush' UNION SELECT 'current_time', UNIX_TIMESTAMP( NOW() ) AS option_value;", ARRAY_A ); $wpdb->suppress_errors( $flag ); if ( empty( $result ) ) { return; } $master_flush = false; foreach ( $result as $row ) { switch ( $row['option_name'] ) { case 'current_time' : $current_time = $row['option_value']; break; case 'gd_system_last_cache_flush' : $master_flush = $row['option_value']; break; } } $local_flush = wp_cache_get( 'gd_system_last_cache_flush' ); if ( false === $local_flush || $local_flush < $master_flush ) { wp_cache_flush( true ); wp_cache_set( 'gd_system_last_cache_flush', $current_time ); } } /** * Start default implementation of object cache */ if ( ! defined( 'WP_APC_KEY_SALT' ) ) { define( 'WP_APC_KEY_SALT', '' ); } function wp_cache_add( $key, $data, $group = '', $expire = 0 ) { global $wp_object_cache; if ( 'transient' == $group ) { wpaas_save_transient( $key, $data, $expire ); return $wp_object_cache->add( "_transient_$key", $data, 'options', $expire ); } elseif ( 'site-transient' == $group ) { wpaas_save_transient( $key, $data, $expire, true ); return $wp_object_cache->add( "_site_transient_$key", $data, 'site-options', $expire ); } else { return $wp_object_cache->add( $key, $data, $group, $expire ); } } function wp_cache_incr( $key, $n = 1, $group = '' ) { global $wp_object_cache; return $wp_object_cache->incr2( $key, $n, $group ); } function wp_cache_decr( $key, $n = 1, $group = '' ) { global $wp_object_cache; return $wp_object_cache->decr( $key, $n, $group ); } function wp_cache_close() { return true; } function wp_cache_delete( $key, $group = '' ) { global $wp_object_cache, $wpdb; if ( 'transient' == $group ) { if ( ! empty( $wpdb ) && $wpdb instanceof wpdb ) { $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); $wpdb->query( $wpdb->prepare( "DELETE FROM `{$wpdb->prefix}options` WHERE option_name IN ( %s, %s );", "_transient_{$key}", "_transient_timeout_{$key}" ) ); $wpdb->suppress_errors( $flag ); } $wp_object_cache->delete( "_transient_timeout_$key", 'options' ); // Update alloptions $alloptions = $wp_object_cache->get( 'alloptions', 'options' ); unset( $alloptions["_transient_$key"] ); unset( $alloptions["_transient_timeout_$key"] ); $wp_object_cache->set( 'alloptions', $alloptions, 'options' ); return $wp_object_cache->delete( "_transient_$key", 'options' ); } elseif ( 'site-transient' == $group ) { if ( ! empty( $wpdb ) && $wpdb instanceof wpdb ) { $table = $wpdb->options; if ( is_multisite() ) { $table = $wpdb->sitemeta; } $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); $wpdb->query( $wpdb->prepare( "DELETE FROM `{$table}` WHERE option_name IN ( %s, %s );", "_transient_{$key}", "_transient_timeout_{$key}" ) ); $wpdb->suppress_errors( $flag ); } $wp_object_cache->delete( "_transient_timeout_$key", 'site-options' ); // Update alloptions $alloptions = $wp_object_cache->get( 'alloptions', 'options' ); unset( $alloptions["_site_transient_$key"] ); unset( $alloptions["_site_transient_timeout_$key"] ); $wp_object_cache->set( 'alloptions', $alloptions, 'options' ); return $wp_object_cache->delete( "_site_transient_$key", 'site-options' ); } return $wp_object_cache->delete( $key, $group ); } function wp_cache_flush( $local_flush = false ) { global $wp_object_cache, $wpdb; if ( ! $local_flush ) { if ( ! empty( $wpdb ) && $wpdb instanceof wpdb ) { $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); $wpdb->query( "INSERT INTO `{$wpdb->options}` (`option_name`, `option_value`, `autoload`) VALUES ( 'gd_system_last_cache_flush', UNIX_TIMESTAMP( NOW() ), 'no' ) ON DUPLICATE KEY UPDATE `option_name` = VALUES ( `option_name` ), `option_value` = VALUES ( `option_value` ), `autoload` = VALUES ( `autoload` );" ); $wpdb->suppress_errors( $flag ); } } return $wp_object_cache->flush(); } function wp_cache_get( $key, $group = '', $force = false ) { global $wp_object_cache, $wpdb; if ( 'transient' == $group ) { $alloptions = $wp_object_cache->get( 'alloptions', 'options' ); if ( isset( $alloptions["_transient_$key"] ) && isset( $alloptions["_transient_timeout_$key"] ) && $alloptions["_transient_timeout_$key"] > time() ) { return maybe_unserialize( $alloptions["_transient_$key"] ); } $transient = $wp_object_cache->get( "_transient_$key", 'options', $force ); $timeout = $wp_object_cache->get( "_transient_timeout_$key", 'options', $force ); if ( false !== $transient && ! empty( $timeout ) && $timeout > time() ) { return maybe_unserialize( $transient ); } if ( ! empty( $wpdb ) && $wpdb instanceof wpdb ) { $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); $result = $wpdb->get_results( $wpdb->prepare( "SELECT option_name, option_value FROM `{$wpdb->options}` WHERE option_name IN ( %s, %s ) UNION SELECT 'current_time', UNIX_TIMESTAMP( NOW() ) AS option_value;", "_transient_{$key}", "_transient_timeout_{$key}" ), ARRAY_A ); $wpdb->suppress_errors( $flag ); if ( ! empty( $result ) ) { $transient = false; $timeout = false; $current_time = time(); foreach ( $result as $row ) { switch ( $row['option_name'] ) { case "_transient_$key" : $transient = $row['option_value']; break; case "_transient_timeout_$key" : $timeout = $row['option_value']; break; case 'current_time' : $current_time = $row['option_value']; break; } } if ( false !== $transient && ! empty( $timeout ) && $timeout > $current_time ) { return maybe_unserialize( $transient ); } } } return false; } elseif ( 'site-transient' == $group ) { $transient = $wp_object_cache->get( "_site_transient_$key", 'options', $force ); $timeout = $wp_object_cache->get( "_site_transient_timeout_$key", 'options', $force ); if ( false !== $transient && ! empty( $timeout ) && $timeout > time() ) { return maybe_unserialize( $transient ); } if ( ! empty( $wpdb ) && $wpdb instanceof wpdb ) { $table = $wpdb->options; if ( is_multisite() ) { $table = $wpdb->sitemeta; } $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); $result = $wpdb->get_results( $wpdb->prepare( "SELECT option_name, option_value FROM `{$table}` WHERE option_name IN ( %s, %s ) UNION SELECT 'current_time', UNIX_TIMESTAMP( NOW() ) AS option_value;", "_site_transient_{$key}", "_site_transient_timeout_{$key}" ), ARRAY_A ); $wpdb->suppress_errors( $flag ); if ( ! empty( $result ) ) { $transient = false; $timeout = false; $current_time = time(); foreach ( $result as $row ) { switch ( $row['option_name'] ) { case "_site_transient_$key" : $transient = $row['option_value']; break; case "_site_transient_timeout_$key" : $timeout = $row['option_value']; break; case 'current_time' : $current_time = $row['option_value']; break; } } if ( false !== $transient && ! empty( $timeout ) && $timeout > $current_time ) { return maybe_unserialize( $transient ); } } } return false; } else { return $wp_object_cache->get( $key, $group, $force ); } } function wp_cache_init() { global $wp_object_cache; if ( mt_rand( 1, 100 ) == 42 ) { wpaas_prune_transients(); } add_action( 'muplugins_loaded', 'wpaas_init_sync_cache' ); $wp_object_cache = new APCu_Object_Cache(); } function wp_cache_replace( $key, $data, $group = '', $expire = 0 ) { global $wp_object_cache; return $wp_object_cache->replace( $key, $data, $group, $expire ); } function wp_cache_set( $key, $data, $group = '', $expire = 0 ) { global $wp_object_cache; if ( defined( 'WP_INSTALLING' ) == false ) { if ( 'transient' == $group ) { return wpaas_save_transient( $key, $data, $expire ); } elseif ( 'site-transient' == $group ) { return wpaas_save_transient( $key, $data, $expire, true ); } else { return $wp_object_cache->set( $key, $data, $group, $expire ); } } else { return $wp_object_cache->delete( $key, $group ); } } function wp_cache_switch_to_blog( $blog_id ) { global $wp_object_cache; return $wp_object_cache->switch_to_blog( $blog_id ); } function wp_cache_add_global_groups( $groups ) { global $wp_object_cache; $wp_object_cache->add_global_groups( $groups ); } function wp_cache_add_non_persistent_groups( $groups ) { global $wp_object_cache; $wp_object_cache->add_non_persistent_groups( $groups ); } class GD_APCu_Object_Cache { private $prefix = ''; private $local_cache = array(); private $global_groups = array(); private $non_persistent_groups = array(); private $multisite = false; private $blog_prefix = ''; public function __construct() { global $table_prefix; $this->multisite = is_multisite(); $this->blog_prefix = $this->multisite ? get_current_blog_id() . ':' : ''; $this->prefix = DB_HOST . '.' . DB_NAME . '.' . $table_prefix; } private function get_group( $group ) { return empty( $group ) ? 'default' : $group; } private function get_key( $group, $key ) { if ( $this->multisite && ! isset( $this->global_groups[ $group ] ) ) { return $this->prefix . '.' . $group . '.' . $this->blog_prefix . ':' . $key; } else { return $this->prefix . '.' . $group . '.' . $key; } } public function add( $key, $data, $group = 'default', $expire = 0 ) { $group = $this->get_group( $group ); $key = $this->get_key( $group, $key ); if ( function_exists( 'wp_suspend_cache_addition' ) && wp_suspend_cache_addition() ) { return false; } if ( isset( $this->local_cache[ $group ][ $key ] ) ) { return false; } // FIXME: Somehow apcu_add does not return false if key already exists if ( ! isset( $this->non_persistent_groups[ $group ] ) && apcu_exists( $key ) ) { return false; } if ( is_object( $data ) ) { $this->local_cache[ $group ][ $key ] = clone $data; } else { $this->local_cache[ $group ][ $key ] = $data; } if ( ! isset( $this->non_persistent_groups[ $group ] ) ) { return apcu_add( $key, $data, (int) $expire ); } return true; } public function add_global_groups( $groups ) { if ( is_array( $groups ) ) { foreach ( $groups as $group ) { $this->global_groups[ $group ] = true; } } else { $this->global_groups[ $groups ] = true; } } public function add_non_persistent_groups( $groups ) { if ( is_array( $groups ) ) { foreach ( $groups as $group ) { $this->non_persistent_groups[ $group ] = true; } } else { $this->non_persistent_groups[ $groups ] = true; } } public function decr( $key, $offset = 1, $group = 'default' ) { if ( $offset < 0 ) { return $this->incr( $key, abs( $offset ), $group ); } $group = $this->get_group( $group ); $key = $this->get_key( $group, $key ); if ( isset( $this->local_cache[ $group ][ $key ] ) && $this->local_cache[ $group ][ $key ] - $offset >= 0 ) { $this->local_cache[ $group ][ $key ] -= $offset; } else { $this->local_cache[ $group ][ $key ] = 0; } if ( isset( $this->non_persistent_groups[ $group ] ) ) { return $this->local_cache[ $group ][ $key ]; } else { $value = apcu_dec( $key, $offset ); if ( $value < 0 ) { apcu_store( $key, 0 ); return 0; } return $value; } } public function delete( $key, $group = 'default', $force = false ) { $group = $this->get_group( $group ); $key = $this->get_key( $group, $key ); unset( $this->local_cache[ $group ][ $key ] ); if ( ! isset( $this->non_persistent_groups[ $group ] ) ) { return apcu_delete( $key ); } return true; } public function flush() { $this->local_cache = array(); // TODO: only clear our own entries apcu_clear_cache(); return true; } public function get( $key, $group = 'default', $force = false, &$found = null ) { $group = $this->get_group( $group ); $key = $this->get_key( $group, $key ); if ( ! $force && isset( $this->local_cache[ $group ][ $key ] ) ) { $found = true; if ( is_object( $this->local_cache[ $group ][ $key ] ) ) { return clone $this->local_cache[ $group ][ $key ]; } else { return $this->local_cache[ $group ][ $key ]; } } elseif ( isset( $this->non_persistent_groups[ $group ] ) ) { $found = false; return false; } else { $value = @apcu_fetch( $key, $found ); if ( $found ) { if ( $force ) { $this->local_cache[ $group ][ $key ] = $value; } return $value; } else { return false; } } } public function incr2( $key, $offset = 1, $group = 'default' ) { if ( $offset < 0 ) { return $this->decr( $key, abs( $offset ), $group ); } $group = $this->get_group( $group ); $key = $this->get_key( $group, $key ); if ( isset( $this->local_cache[ $group ][ $key ] ) && $this->local_cache[ $group ][ $key ] + $offset >= 0 ) { $this->local_cache[ $group ][ $key ] += $offset; } else { $this->local_cache[ $group ][ $key ] = 0; } if ( isset( $this->non_persistent_groups[ $group ] ) ) { return $this->local_cache[ $group ][ $key ]; } else if ( function_exists( 'apcu_inc' ) ) { $value = apcu_inc( $key, $offset ); if ( $value < 0 ) { apcu_store( $key, 0 ); return 0; } return $value; } return false; } public function replace( $key, $data, $group = 'default', $expire = 0 ) { $group = $this->get_group( $group ); $key = $this->get_key( $group, $key ); if ( isset( $this->non_persistent_groups[ $group ] ) ) { if ( ! isset( $this->local_cache[ $group ][ $key ] ) ) { return false; } } else { if ( ! isset( $this->local_cache[ $group ][ $key ] ) && ! apcu_exists( $key ) ) { return false; } apcu_store( $key, $data, (int) $expire ); } if ( is_object( $data ) ) { $this->local_cache[ $group ][ $key ] = clone $data; } else { $this->local_cache[ $group ][ $key ] = $data; } return true; } public function reset() { // This function is deprecated as of WordPress 3.5 // Be safe and flush the cache if this function is still used $this->flush(); } public function set( $key, $data, $group = 'default', $expire = 0 ) { $group = $this->get_group( $group ); $key = $this->get_key( $group, $key ); if ( is_object( $data ) ) { $this->local_cache[ $group ][ $key ] = clone $data; } else { $this->local_cache[ $group ][ $key ] = $data; } if ( ! isset( $this->non_persistent_groups[ $group ] ) ) { return apcu_store( $key, $data, (int) $expire ); } return true; } public function stats() { // Only implemented because the default cache class provides this. // This method is never called. echo ''; } public function switch_to_blog( $blog_id ) { $this->blog_prefix = $this->multisite ? $blog_id . ':' : ''; } } if ( function_exists( 'apcu_inc' ) ) { class APCu_Object_Cache extends GD_APCu_Object_Cache { function incr( $key, $offset = 1, $group = 'default' ) { return parent::incr2( $key, $offset, $group ); } } } else { class APCu_Object_Cache extends GD_APCu_Object_Cache { // Blank } } endif;
Warning: Cannot modify header information - headers already sent by (output started at /usr/hosting/oldpics.net/html/wp-content/object-cache.php:1) in /usr/hosting/oldpics.net/html/wp-includes/rest-api/class-wp-rest-server.php on line 1713

Warning: Cannot modify header information - headers already sent by (output started at /usr/hosting/oldpics.net/html/wp-content/object-cache.php:1) in /usr/hosting/oldpics.net/html/wp-includes/rest-api/class-wp-rest-server.php on line 1713

Warning: Cannot modify header information - headers already sent by (output started at /usr/hosting/oldpics.net/html/wp-content/object-cache.php:1) in /usr/hosting/oldpics.net/html/wp-includes/rest-api/class-wp-rest-server.php on line 1713

Warning: Cannot modify header information - headers already sent by (output started at /usr/hosting/oldpics.net/html/wp-content/object-cache.php:1) in /usr/hosting/oldpics.net/html/wp-includes/rest-api/class-wp-rest-server.php on line 1713

Warning: Cannot modify header information - headers already sent by (output started at /usr/hosting/oldpics.net/html/wp-content/object-cache.php:1) in /usr/hosting/oldpics.net/html/wp-includes/rest-api/class-wp-rest-server.php on line 1713

Warning: Cannot modify header information - headers already sent by (output started at /usr/hosting/oldpics.net/html/wp-content/object-cache.php:1) in /usr/hosting/oldpics.net/html/wp-includes/rest-api/class-wp-rest-server.php on line 1713

Warning: Cannot modify header information - headers already sent by (output started at /usr/hosting/oldpics.net/html/wp-content/object-cache.php:1) in /usr/hosting/oldpics.net/html/wp-includes/rest-api/class-wp-rest-server.php on line 1713

Warning: Cannot modify header information - headers already sent by (output started at /usr/hosting/oldpics.net/html/wp-content/object-cache.php:1) in /usr/hosting/oldpics.net/html/wp-includes/rest-api/class-wp-rest-server.php on line 1713
{"id":6124,"date":"2020-10-06T14:34:43","date_gmt":"2020-10-06T12:34:43","guid":{"rendered":"https:\/\/oldpics.net\/?p=6124"},"modified":"2020-10-06T14:34:45","modified_gmt":"2020-10-06T12:34:45","slug":"early-color-pictures-of-the-american-lifestyle-in-the-1920s","status":"publish","type":"post","link":"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/","title":{"rendered":"Early color pictures of the American lifestyle in the 1920s"},"content":{"rendered":"\n

\"1920sThe special value of these 1920s pictures is that they are real color shots, not colorized. The photographers of the National Geographic Society used the autochrome process to obtain America’s color photographs at the beginning of the 20th century. The color multilayer photographic film “Kodachrome” appeared a bit later, in 1935. This invention vastly expanded the possibilities of color printing.\u00a0<\/span><\/p>\n

Nonetheless, the Society accumulated a collection of autochrome color pictures from the 1910s and 1920s with around 12,000 images.<\/span><\/p>\n

In July 1914, National Geographic magazine published its first color photographs. They showcased the power of autochrome and changed the style of the magazine cover.<\/span><\/p>\n

Pictures from all over America of the 1920s<\/h3>\n

Another value of this set is its wide geography. Oldpics used to publish some bright 1920s (as well as other periods’ photographs) pictures of the large cities, like New York<\/a>, which attracted many outstanding photographers. This photo set is different. There’re plenty of countryside photographs which are relatively rare finds. But those NYC-photography lovers shouldn’t worry either. Some special color shots of the Greatest city in the world are in this publication too.<\/p>\n

This series covers different aspects of American life, culture, and magnificent landscapes. These 1920s pictures look closer to the 19th-century landscape photography of Carleton Watkins<\/a> and American settler’s Solomon Butcher<\/a> series. Again, these are color ones, and thus they keep some exceptional details of the early 20th-century lifestyle.<\/span><\/p>\n

Idealized American lifestyle of the 1950s by Nina Leen<\/a><\/h3>\n
\"Virginia

Virginia – A girl poses with corncobs and pumpkins during the harvest, Virginia. Photo by Charles Martin.<\/p><\/div>\n

\"A

A woman with a teenager washes on the street in Sperryville. Photo by Charles Martin<\/p><\/div>\n

\"A

A Hopi Indian on his donkey stands on the edge of a high mountain. Photo by Franklin Price Knott<\/p><\/div>\n

\"Mount

Mount Shasta in California and a woman at the edge of a pond. Photo by Franklin Price Knott<\/p><\/div>\n

\"Portrait

Portrait of a Hopi Indian woman weaving a basket. Photo by Franklin Price Knott<\/p><\/div>\n

\"Two

Two men stand among white birches in the Battenkill Valley, Bennington, Vermont. Photo by Clifton R. Adams<\/p><\/div>\n

\"A

A rider poses with her pony in a rodeo in Texas. Photo by Clifton R. Adams<\/p><\/div>\n

\"Scenic

Amazing view of the Capitol. Photo by Charles Martin<\/p><\/div>\n

\"Vacationers

Vacationers by a running river on a warm summer day. Photo by Clifton R. Adams<\/p><\/div>\n

\"

Two women look west from Stowe’s village towards Mount Mansfield, Vermont Photo by Clifton R. Adams.<\/p><\/div>\n

\"\"

Indian family in their dwelling, tipi. Montana. Photo by Edwin L. Visherd<\/p><\/div>\n

The story of American way photo by Margarett Bourke-White<\/a><\/h3>\n
\"Three

Three men stand in front of a plane on the Crowe Reservation in Montana. Photo by Edwin L. Visherd<\/p><\/div>\n

\"A

Washington, DC. A group of children looks at an elephant at the National Zoo. Photo by Jacob J. Guyer<\/p><\/div>\n

\"woman

Washington DC. A woman in front of a fruit rack in the US capital. Photo by Orren R. Lowden<\/p><\/div>\n

\"St.

St. Petersburg, Florida. Women sit on the beach. Photo by Clifton R. Adams<\/p><\/div>\n

\"Portrait

Portrait of a boy in New Orleans. Photo by Edwin L. Visherd<\/p><\/div>\n

\"View

View of the Hudson River in New York. Photo Credi Clifton R. Adams and Edwin L. Visherd<\/p><\/div>\n

\"A

A group of people relaxing on the ocean coast, Miami Beach, Florida. Photo by Clifton R. Adams.<\/p><\/div>\n

\"pictures

Swimming competition in Florida<\/p><\/div>\n

\"pictures

The sixty-story Woolworth Building rises on the New York skyline. Photo by Clifton R. Adams<\/p><\/div>\n

See more:\u00a0Postwar New York in 65 unforgettable vintage pictures<\/a><\/h3>\n
\"New

New Yorkers browse the assortment of goods sold along city streets. Photo by Clifton R. Adams and Edwin L. Visherd.<\/p><\/div>\n

\"Aerial

Aerial photography of Manhattan. Photo by Clifton R. Adams and Edwin L. Visherd<\/p><\/div>\n

\"People

People in the cotton field in Louisiana. Photo by Edwin L. Visherd<\/p><\/div>\n

\"A

Atlantic City, New Jersey. A coastal patrol pushes a boat into the water. Photo by Clifton R. Adams<\/p><\/div>\n

\"Five

Five boys eat watermelon in New Orlean. Photo by Edwin L. Visherd<\/p><\/div>\n

\"Pine

Pine Ridge Indian Reservation, South Dakota. Kids outside a house with a turf roof. Photo by Richard Hewitt Stewart<\/p><\/div>\n

\"At

At the fair in Lyndonville, Ohio. Photo by Jacob J. Guyer<\/p><\/div>\n

\"Apple

Apple stands at the Lyndonville fair, Ohio Photo by Jacob J. Guyer.<\/p><\/div>\n

\"A

A group of students on the terrace at Cornell University. Photo by Clifton R. Adams<\/p><\/div>\n

\"Washington

Washington Square and Fifth Avenue. Photo by Clifton R. Adams and Edwin L. Visherd<\/p><\/div>\n

\"French

French Quarter, New Orlean. Photo by- Edwin L. Visherd<\/p><\/div>\n

\"1920s

Praline saleswoman in the French Quarter. Photo by Edwin L. Visherd<\/p><\/div>\n

\"Children

Children gather around a snowball vendor, New Orlean. Photo by Edwin L. Visherd<\/p><\/div>\n

\"A

A woman sitting on stone steps in the French Quarter sells pralines. Photo by Edwin L. Visherd<\/p><\/div>\n

\"A

A boy sits on a barrel outside a brewery in the French Quarter, New Orlean. Photo by Edwin L. Visherd<\/p><\/div>\n

\"Washington

Washington Square in New York. Photo by Clifton R. Adams and Edwin L. Visherd<\/p><\/div>\n

\"Hopi

Hopi Indian Reservation – Men stand next to a car in a field and look at a nearby canyon.<\/p><\/div>\n

\"A

A rider shows her sister how to handle ropes, Fort Worth, Texas.<\/p><\/div>\n

\"\"

A view of the main street in the downtown area of Columbus, Ohio. Photo by Jacob J. Guyer<\/p><\/div>\n

\"Atlantic

Atlantic City, New Jersey, 1920s. Panoramic views of beaches, marinas, and hotels along the waterfront. Photo by Clifton R. Adams<\/p><\/div>\n

\"A

A ranch where guests can feel like cowboys in Arizona. Photo by Clifton R. Adams<\/p><\/div>\n

\"\"

A woman sits outside the door of the Old Absinthe House in New Orleans. Photo by Edwin L. Visherd<\/p><\/div>\n

\"Four

Four tour guides await tourists for a tour of the Gettysburg Battlefield, Gettysburg, PA.<\/p><\/div>\n

\"Coast

Coast Guard officers set sail in their boat. Photo by Jacob J. Guyer<\/p><\/div>\n

\"\"

Cowboys and horseback riders sit along a fence at a rodeo, San Antonio, Texas.<\/p><\/div>\n

\"Men

Men load bins with sulfur, Galveston, TX.<\/p><\/div>\n

See more:\u00a0Texas City explosion, 1947: Shocking pictures and video of the accident<\/a><\/h3>\n
\"A

A man shovels sulfur in a warehouse near the pier, Galveston, Texas.<\/p><\/div>\n

\"Three

Three young women at the rodeo, Fort Worth, Texas.<\/p><\/div>\n

\"Crowe

Crow Indian Reservation, Montana – Men stand next to the monument to the Seventh Cavalry.<\/p><\/div>\n

\"Head

Head of the Crowe Indian Reservation, Montana<\/p><\/div>\n

\u00a0<\/p>\n","protected":false},"excerpt":{"rendered":"

The special value of these 1920s pictures is that they are real color shots, not colorized. The photographers of the National Geographic…<\/p>\n","protected":false},"author":2,"featured_media":6175,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[39,133,144,32,200,95],"yoast_head":"\nEarly color pictures of the American lifestyle in the 1920s - Old Pictures<\/title>\n<meta name=\"description\" content=\"Amazing set of color pictures of the America in the 1920s. Rare pictures from Montana, Ohio, Texas, New York and other places in the US.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Early color pictures of the American lifestyle in the 1920s - Old Pictures\" \/>\n<meta property=\"og:description\" content=\"Amazing set of color pictures of the America in the 1920s. Rare pictures from Montana, Ohio, Texas, New York and other places in the US.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/\" \/>\n<meta property=\"og:site_name\" content=\"Old Pictures\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/oldpics.net\/\" \/>\n<meta property=\"article:published_time\" content=\"2020-10-06T12:34:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-10-06T12:34:45+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/oldpics.net\/wp-content\/uploads\/2020\/10\/1920s-US-lifestyle-pictures.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"900\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Anna Ramirez\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/oldpics.net\/#website\",\"url\":\"https:\/\/oldpics.net\/\",\"name\":\"Old Pictures\",\"description\":\"Historical photos, stories and even more\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/oldpics.net\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/#primaryimage\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/oldpics.net\/wp-content\/uploads\/2020\/10\/1920s-US-lifestyle-pictures.jpg\",\"contentUrl\":\"https:\/\/oldpics.net\/wp-content\/uploads\/2020\/10\/1920s-US-lifestyle-pictures.jpg\",\"width\":1200,\"height\":900,\"caption\":\"1920s US lifestyle pictures\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/#webpage\",\"url\":\"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/\",\"name\":\"Early color pictures of the American lifestyle in the 1920s - Old Pictures\",\"isPartOf\":{\"@id\":\"https:\/\/oldpics.net\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/#primaryimage\"},\"datePublished\":\"2020-10-06T12:34:43+00:00\",\"dateModified\":\"2020-10-06T12:34:45+00:00\",\"author\":{\"@id\":\"https:\/\/oldpics.net\/#\/schema\/person\/1efc398ddd88adfb0a866aba80bc24eb\"},\"description\":\"Amazing set of color pictures of the America in the 1920s. Rare pictures from Montana, Ohio, Texas, New York and other places in the US.\",\"breadcrumb\":{\"@id\":\"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u0413\u043b\u0430\u0432\u043d\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\",\"item\":\"https:\/\/oldpics.net\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Early color pictures of the American lifestyle in the 1920s\"}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/oldpics.net\/#\/schema\/person\/1efc398ddd88adfb0a866aba80bc24eb\",\"name\":\"Anna Ramirez\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/oldpics.net\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/74e7540c75d2a2e78694dddb75113518?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/74e7540c75d2a2e78694dddb75113518?s=96&d=mm&r=g\",\"caption\":\"Anna Ramirez\"},\"url\":\"https:\/\/oldpics.net\/author\/anna\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Early color pictures of the American lifestyle in the 1920s - Old Pictures","description":"Amazing set of color pictures of the America in the 1920s. Rare pictures from Montana, Ohio, Texas, New York and other places in the US.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/","og_locale":"en_US","og_type":"article","og_title":"Early color pictures of the American lifestyle in the 1920s - Old Pictures","og_description":"Amazing set of color pictures of the America in the 1920s. Rare pictures from Montana, Ohio, Texas, New York and other places in the US.","og_url":"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/","og_site_name":"Old Pictures","article_publisher":"https:\/\/www.facebook.com\/oldpics.net\/","article_published_time":"2020-10-06T12:34:43+00:00","article_modified_time":"2020-10-06T12:34:45+00:00","og_image":[{"width":1200,"height":900,"url":"https:\/\/oldpics.net\/wp-content\/uploads\/2020\/10\/1920s-US-lifestyle-pictures.jpg","type":"image\/jpeg"}],"twitter_card":"summary","twitter_misc":{"Written by":"Anna Ramirez","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebSite","@id":"https:\/\/oldpics.net\/#website","url":"https:\/\/oldpics.net\/","name":"Old Pictures","description":"Historical photos, stories and even more","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/oldpics.net\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"ImageObject","@id":"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/#primaryimage","inLanguage":"en-US","url":"https:\/\/oldpics.net\/wp-content\/uploads\/2020\/10\/1920s-US-lifestyle-pictures.jpg","contentUrl":"https:\/\/oldpics.net\/wp-content\/uploads\/2020\/10\/1920s-US-lifestyle-pictures.jpg","width":1200,"height":900,"caption":"1920s US lifestyle pictures"},{"@type":"WebPage","@id":"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/#webpage","url":"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/","name":"Early color pictures of the American lifestyle in the 1920s - Old Pictures","isPartOf":{"@id":"https:\/\/oldpics.net\/#website"},"primaryImageOfPage":{"@id":"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/#primaryimage"},"datePublished":"2020-10-06T12:34:43+00:00","dateModified":"2020-10-06T12:34:45+00:00","author":{"@id":"https:\/\/oldpics.net\/#\/schema\/person\/1efc398ddd88adfb0a866aba80bc24eb"},"description":"Amazing set of color pictures of the America in the 1920s. Rare pictures from Montana, Ohio, Texas, New York and other places in the US.","breadcrumb":{"@id":"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/oldpics.net\/early-color-pictures-of-the-american-lifestyle-in-the-1920s\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u0413\u043b\u0430\u0432\u043d\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430","item":"https:\/\/oldpics.net\/"},{"@type":"ListItem","position":2,"name":"Early color pictures of the American lifestyle in the 1920s"}]},{"@type":"Person","@id":"https:\/\/oldpics.net\/#\/schema\/person\/1efc398ddd88adfb0a866aba80bc24eb","name":"Anna Ramirez","image":{"@type":"ImageObject","@id":"https:\/\/oldpics.net\/#personlogo","inLanguage":"en-US","url":"https:\/\/secure.gravatar.com\/avatar\/74e7540c75d2a2e78694dddb75113518?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/74e7540c75d2a2e78694dddb75113518?s=96&d=mm&r=g","caption":"Anna Ramirez"},"url":"https:\/\/oldpics.net\/author\/anna\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/oldpics.net\/wp-json\/wp\/v2\/posts\/6124"}],"collection":[{"href":"https:\/\/oldpics.net\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/oldpics.net\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/oldpics.net\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/oldpics.net\/wp-json\/wp\/v2\/comments?post=6124"}],"version-history":[{"count":2,"href":"https:\/\/oldpics.net\/wp-json\/wp\/v2\/posts\/6124\/revisions"}],"predecessor-version":[{"id":6178,"href":"https:\/\/oldpics.net\/wp-json\/wp\/v2\/posts\/6124\/revisions\/6178"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/oldpics.net\/wp-json\/wp\/v2\/media\/6175"}],"wp:attachment":[{"href":"https:\/\/oldpics.net\/wp-json\/wp\/v2\/media?parent=6124"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/oldpics.net\/wp-json\/wp\/v2\/categories?post=6124"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/oldpics.net\/wp-json\/wp\/v2\/tags?post=6124"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}