Friday, 30 November 2012
Fridaygram: #freeandopen Internet, new form of matter, lava flowing
By Scott Knaster, Google Developers Blog Editor
This week we launched a campaign to keep the Internet #freeandopen, ahead of a meeting of government agencies next week that could increase censorship and regulation of the Internet. We believe that Internet policies should be discussed and decided by the people who use it, not just governments. You can go to the site to learn more and find out what you can do. You can also watch Google Developers Live next Tue., Wed., and Thu. for live Hangouts on this topic. Your opinion matters!
Speaking of matter, researchers are eyeing data from the Large Hadron Collider for evidence of a new form of matter that has been theorized to exist but never seen. The new matter is a kind of gluon called color-glass condensate. Scientists noted that some wacky particles unexpectedly showed quantum entanglement when they traveled in the same direction after collisions. A new state of matter is a possible explanation.
Finally, take a look at this video of erupting lava from the Kilauea Volcano flowing into the ocean. You can also see a webcam view of the caldera, including some brave people watching from a safe distance. Maybe they’ll wave!
Each Friday on this blog we depart from the usual developer topics and present fun and interesting stuff that’s not necessarily related to writing code. Sometimes we even veer into an important topic, like the #freeandopen program mentioned in this post.
Posted by Ashleigh Rentz, Editor Emerita
Labels:
Fridaygram
Location:
Mountain View, CA, USA
Vertical Menu - Wordpress
For vertical menu or changing the id of dynamic menu:-
- Goto root folder
- websitename/wp-includes/nav-menu-template.php
- Probably line no. :-137 or find the below function
- Add the bold character string to the function.
- once you are done with this add 2 files(css & js) & include both of them (define) in header.php of your theme.
- you can find the file codes at the end of the code.
function wp_nav_menu( $args = array() ) {
static $menu_id_slugs = array();
$defaults = array( 'menu' => '', 'container' => 'div', 'container_class' => '', 'container_id' => '', 'menu_class' => 'menu glossymenu', 'menu_id' => 'verticalmenu',
'echo' => true, 'fallback_cb' => 'wp_page_menu', 'before' => '', 'after' => '', 'link_before' => '', 'link_after' => '', 'items_wrap' => '<ul id="%1$s">%3$s</ul>',
'depth' => 0, 'walker' => '', 'theme_location' => '' );
cssverticalmenu.css
.glossymenu, .glossymenu li ul{
list-style-type: none;
margin: 0;
padding: 0;
width: 200px; /*WIDTH OF MAIN MENU ITEMS*/
}
.glossymenu li{
position: relative;
}
.glossymenu li a{
background: url(../images/li_bg.jpg) repeat-x bottom left;
font: bold 12px Verdana, Helvetica, sans-serif;
color: white;
display: block;
width: auto;
padding: 8px 0 12px 10px;
border: 1px solid #004623;
text-decoration: none;
}
.glossymenu li ul{ /*SUB MENU STYLE*/
position: absolute;
width: 190px; /*WIDTH OF SUB MENU ITEMS*/
left: 0;
top: 0;
display: none;
}
.glossymenu li ul li{
float: left;
}
.glossymenu li ul a{
width: 180px; /*WIDTH OF SUB MENU ITEMS - 10px padding-left for A elements */
}
.glossymenu .arrowdiv{
position: absolute;
right: 12px;
top: 13px;
background: url(../images/arrow.png) no-repeat;
}
.glossymenu li a:visited, .glossymenu li a:active{
color: white;
}
.glossymenu li a:hover{
background:url(../images/li_bg_hover.jpg) repeat-x;
}
/* Holly Hack for IE \*/
* html .glossymenu li { float: left; height: 1%; }
* html .glossymenu li a { height: 1%; }
/* End */
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
cssverticalmenu.js
var menuids=new Array("verticalmenu") //Enter id(s) of UL menus, separated by commas
var submenuoffset=-2 //Offset of submenus from main menu. Default is -2 pixels.
function createcssmenu(){
for (var i=0; i<menuids.length; i++){
var ultags=document.getElementById(menuids[i]).getElementsByTagName("ul")
for (var t=0; t<ultags.length; t++){
var spanref=document.createElement("span")
spanref.className="arrowdiv"
spanref.innerHTML=" "
ultags[t].parentNode.getElementsByTagName("a")[0].appendChild(spanref)
ultags[t].parentNode.onmouseover=function(){
this.getElementsByTagName("ul")[0].style.left=this.parentNode.offsetWidth+submenuoffset+"px"
this.getElementsByTagName("ul")[0].style.display="block"
}
ultags[t].parentNode.onmouseout=function(){
this.getElementsByTagName("ul")[0].style.display="none"
}
}
}
}
if (window.addEventListener)
window.addEventListener("load", createcssmenu, false)
else if (window.attachEvent)
window.attachEvent("onload", createcssmenu)
Thursday, 29 November 2012
Google Cloud Storage - more value for performance
By Dave Barth, Product Manager
Cross-posted with the Official Google Enterprise Blog
Earlier this week, we announced a collection of improvements across Google Cloud Platform including 36 new Compute Engine instances, Durable Reduced Availability (DRA) storage, Object Versioning, and European datacenter support. We also announced that we are reducing the price of standard Google Cloud Storage by over 20%.
We are committed to delivering the best value in the marketplace to businesses and developers looking to operate in the cloud. That’s why today we are reducing the price of Google Cloud Storage by an additional 10%, resulting in a total price reduction of over 30%. This price reduction applies to all Cloud Storage regions and the new DRA Storage.
Find out more about the new Cloud Storage pricing and sign up now to get started.
Dave Barth is a Product Manager on the Google Cloud Storage team, based in Seattle. He is idealistic about the capacity of technology to change the world.
Posted by Raj Sarkar
Cross-posted with the Official Google Enterprise Blog
Earlier this week, we announced a collection of improvements across Google Cloud Platform including 36 new Compute Engine instances, Durable Reduced Availability (DRA) storage, Object Versioning, and European datacenter support. We also announced that we are reducing the price of standard Google Cloud Storage by over 20%.
We are committed to delivering the best value in the marketplace to businesses and developers looking to operate in the cloud. That’s why today we are reducing the price of Google Cloud Storage by an additional 10%, resulting in a total price reduction of over 30%. This price reduction applies to all Cloud Storage regions and the new DRA Storage.
Find out more about the new Cloud Storage pricing and sign up now to get started.
Dave Barth is a Product Manager on the Google Cloud Storage team, based in Seattle. He is idealistic about the capacity of technology to change the world.
Posted by Raj Sarkar
Location:
Mountain View, CA, USA
Wednesday, 28 November 2012
Launching WordPress into the Google cloud
By Artem Livshits, CEO of OblakSoft
This guest post was written by Artem Livshits, CEO of OblakSoft, which makes the ClouSE MySQL storage engine for cloud development. In this post, Artem describes his experience using Google Cloud Storage to store and serve a WordPress blog.
WordPress is popular blogging software used by over 60 million people. If you have a WordPress blog, you want to ensure that your server load is manageable and that your load times are fast. You also want your data to be protected in case your server fails. With that in mind, we at OblakSoft created the Cloud Storage Engine for MySQL (ClouSE). It stores all your WordPress data on Google Cloud Storage, taking the load off your server to improve reliability and speed, and to reduce hosting costs.
We’ve been very impressed with the performance of Google Cloud Storage. Because it’s built on Google’s infrastructure, storage objects are cached within Google’s global network and distributed globally without the need for a Content Distribution Network (CDN). This ensures content is delivered with the best possible performance.
Here is a high-level architectural diagram of a WordPress-powered website that uses Google Cloud Storage to store and serve content:
The website’s content management is done through WordPress, which uses a MySQL server to store the website’s data. It uses the WP2Cloud WordPress plugin we created to upload pictures (and other media files) to Google Cloud Storage. ClouSE makes the web server stateless by storing all data in Google Cloud Storage using the Google Cloud Storage API. Web pages (lightweight HTML) are served by WordPress, while media files are served by Google Cloud Storage directly.
WordPress is one example of a MySQL-based application that can take full advantage of Google Cloud Storage to:
We’re very excited about the potential of the Google Cloud Platform to power dynamic web server applications. Launch your own WordPress site in the cloud today - it’s easy and there’s minimal setup. We found it easy to make ClouSe work with Google Cloud Storage, and you can see how you can integrate Google Cloud Storage into your app as well.
Artem Livshits is the Founder, CEO and software architect at OblakSoft, a company focusing on technologies that simplify adoption of cloud computing. Previously Artem led the development of several server products from inception to maturity during his 12 years at Microsoft, including the source control system managing most of the Microsoft code base.
Posted by Scott Knaster, Editor
This guest post was written by Artem Livshits, CEO of OblakSoft, which makes the ClouSE MySQL storage engine for cloud development. In this post, Artem describes his experience using Google Cloud Storage to store and serve a WordPress blog.
WordPress is popular blogging software used by over 60 million people. If you have a WordPress blog, you want to ensure that your server load is manageable and that your load times are fast. You also want your data to be protected in case your server fails. With that in mind, we at OblakSoft created the Cloud Storage Engine for MySQL (ClouSE). It stores all your WordPress data on Google Cloud Storage, taking the load off your server to improve reliability and speed, and to reduce hosting costs.
We’ve been very impressed with the performance of Google Cloud Storage. Because it’s built on Google’s infrastructure, storage objects are cached within Google’s global network and distributed globally without the need for a Content Distribution Network (CDN). This ensures content is delivered with the best possible performance.
Here is a high-level architectural diagram of a WordPress-powered website that uses Google Cloud Storage to store and serve content:
The website’s content management is done through WordPress, which uses a MySQL server to store the website’s data. It uses the WP2Cloud WordPress plugin we created to upload pictures (and other media files) to Google Cloud Storage. ClouSE makes the web server stateless by storing all data in Google Cloud Storage using the Google Cloud Storage API. Web pages (lightweight HTML) are served by WordPress, while media files are served by Google Cloud Storage directly.
WordPress is one example of a MySQL-based application that can take full advantage of Google Cloud Storage to:
- Keep the data highly available and highly durable.
- Serve media files in a highly scalable fashion.
- Distribute media files across the globe for fast access.
We’re very excited about the potential of the Google Cloud Platform to power dynamic web server applications. Launch your own WordPress site in the cloud today - it’s easy and there’s minimal setup. We found it easy to make ClouSe work with Google Cloud Storage, and you can see how you can integrate Google Cloud Storage into your app as well.
Artem Livshits is the Founder, CEO and software architect at OblakSoft, a company focusing on technologies that simplify adoption of cloud computing. Previously Artem led the development of several server products from inception to maturity during his 12 years at Microsoft, including the source control system managing most of the Microsoft code base.
Posted by Scott Knaster, Editor
Labels:
cloud platform,
google cloud storage,
guest post
Location:
San Francisco, CA, USA
Monday, 26 November 2012
Google Cloud Platform: new features, lower prices, extending European datacenters
By Jessie Jiang, Product Management Director
(Cross-posted on the Official Google Enterprise Blog.)
We're constantly making updates to our Google Cloud Platform products—Google App Engine, Cloud Storage, Big Query, Compute Engine and others—based on user feedback and to improve the overall experience. For example, two weeks ago we introduced a major update to Google Cloud SQL providing faster performance, larger databases (100GB), an EU zone, and a no-cost trial. But, we know there is more to do. Today, we’re continuing to improve the platform with new storage and compute capabilities, significantly lower prices, and more European Datacenter support.
Lower storage prices and new Durable Reduced Availability (DRA) Storage
Updated 3:23 PM to provide more details about DRA. To give you more flexibility in your storage options and prices, we’re reducing the price of standard Google Cloud Storage by over 20% and introducing a limited preview of Durable Reduced Availability (DRA) storage. DRA storage lowers prices by reducing some data availability, while maintaining the same latency performance and durability as standard Google Cloud Storage. This makes it a great option for batch compute jobs that can easily be rescheduled or for data backup where quick access to your data is important. DRA achieves cost savings by keeping fewer redundant replicas of data. Unlike other reduced redundancy cloud storage offerings, DRA is implemented in a manner that maintains data durability so you don't have to worry about losing your data in the cloud.
And, to automatically keep a history of old versions of your data, we’re introducing Object Versioning. You can also use it to help protect against deleting or overwriting your data by mistake or due to an application error.
More European Datacenter support
We are continuing to roll out our European Datacenter support. Now, customers using Google App Engine, Google Cloud Storage, Google Cloud SQL and (soon) Google Compute Engine can deploy their applications, data and virtual machines to European Datacenters. This helps bring your solutions even closer to your customers for faster performance and enables international redundancy.
36 New Compute Engine instance types and overall reduced prices
Earlier this year we introduced a Limited Preview of Google Compute Engine with four standard instance types. Today, we are announcing 36 additional instance types and are reducing the price of our original 4 standard instances by about 5% for those currently in our preview. In the coming weeks, the following will be available:
- High Memory Instance - High performance instances tailored for applications that demand large amounts of memory.
- High CPU Instance - Reduced cost option when applications don’t require as much memory.
- Diskless Configurations - Lower cost options for applications that do not require ephemeral disk and can exclusively utilize persistent disk.
We are also introducing Persistent Disk Snapshotting which makes it simple to instantly create a backup of your disk, move it around Google datacenters, and use the snapshot to start up a new VM.
We want to thank you, the community of developers and businesses who are pushing the platform into new areas and building innovative applications. We look forward to seeing where you take it next. Find out more about the new Cloud Storage pricing and Compute Engine instances. Sign up now and get started today.
Jessie Jiang is the Product Management Director, Google Cloud Platform. She is passionate about building the best platform for developers and businesses in the cloud.
Posted by Scott Knaster, Editor
Location:
Mountain View, CA, USA
Google Code-in 2012 contest starts today
By Stephanie Taylor, Open Source Programs
Cross-posted with the Google Open Source Blog
… and Go! The Google Code-in 2012 contest has officially started! If you are a 13-17 year old pre-university (high school) student interested in computer science who would like to learn more about open source software development while earning cool prizes, sign up on our program site today. Students have the opportunity to select tasks from 5 categories (coding, documentation/training, quality assurance, research/outreach and user interface) that are designed by 10 open source organizations that will provide mentors for the students. Students earn certificates, t-shirts and Grand Prize Winners will win a trip for themselves and a parent or legal guardian to Google’s Mountain View California campus in 2013. Each of the 10 open source organizations will choose 2 of the 5 students that complete the most tasks with their organization as their Grand Prize Winners for a total of 20 Grand Prize Winners for Google Code-in 2012- that’s twice as many Grand Prize Winners as last year!
Last year, 542 students from 56 countries competed in the contest: this year you could be one of the students from around the world learning new skills and making new friends by experiencing the awesome world of open source development.
If you’d like to sign up, please review the Contest Rules and Frequently Asked Questions (FAQ) on our program site. You can join our discussion list to ask any other questions. For details on important dates for the contest, see the calendar. If you meet the eligibility requirements you can create your account on the program site and start claiming tasks today!
Join us today, Nov 26th, as members of Google’s Open Source Programs Office host a Live Google Code-in Hangout on Air on the Google Education page at 2pm PST to discuss details of the contest and to answer questions from viewers. If you can’t make the live Hangout on Air it will be recorded and posted on our Google Open Source Student Programs YouTube Channel within a couple of days.
The contest ends on January 14, 2013 so start claiming tasks today. Good luck and have fun!
Written by Stephanie Taylor, Open Source Programs
Posted by Scott Knaster, Editor
Cross-posted with the Google Open Source Blog
… and Go! The Google Code-in 2012 contest has officially started! If you are a 13-17 year old pre-university (high school) student interested in computer science who would like to learn more about open source software development while earning cool prizes, sign up on our program site today. Students have the opportunity to select tasks from 5 categories (coding, documentation/training, quality assurance, research/outreach and user interface) that are designed by 10 open source organizations that will provide mentors for the students. Students earn certificates, t-shirts and Grand Prize Winners will win a trip for themselves and a parent or legal guardian to Google’s Mountain View California campus in 2013. Each of the 10 open source organizations will choose 2 of the 5 students that complete the most tasks with their organization as their Grand Prize Winners for a total of 20 Grand Prize Winners for Google Code-in 2012- that’s twice as many Grand Prize Winners as last year!
Last year, 542 students from 56 countries competed in the contest: this year you could be one of the students from around the world learning new skills and making new friends by experiencing the awesome world of open source development.
If you’d like to sign up, please review the Contest Rules and Frequently Asked Questions (FAQ) on our program site. You can join our discussion list to ask any other questions. For details on important dates for the contest, see the calendar. If you meet the eligibility requirements you can create your account on the program site and start claiming tasks today!
Join us today, Nov 26th, as members of Google’s Open Source Programs Office host a Live Google Code-in Hangout on Air on the Google Education page at 2pm PST to discuss details of the contest and to answer questions from viewers. If you can’t make the live Hangout on Air it will be recorded and posted on our Google Open Source Student Programs YouTube Channel within a couple of days.
The contest ends on January 14, 2013 so start claiming tasks today. Good luck and have fun!
Written by Stephanie Taylor, Open Source Programs
Posted by Scott Knaster, Editor
Labels:
contest,
open source
Location:
Mountain View, CA, USA
Friday, 23 November 2012
The 100 WordPress Related Blogs You Need In Your Life
WordPress is one of the most popular CMS and blogging platform around, mainly because it is free and it is 100% customizable.
Over 80% of people are using WordPress as their blogging platform and one cannot be successful unless he keeps himself updated with the latest happenings & trends in the WordPress community.
The best way to keep updated with regular trends & updates is by subscribing to best WordPress blogs and websites.
Further more, such blogs can provide excellent tutorials and tips that will help you manage the WordPress-powered websites.
Here’s the list of 100 WordPress Related Websites:
-By Parthiv Patel
Over 80% of people are using WordPress as their blogging platform and one cannot be successful unless he keeps himself updated with the latest happenings & trends in the WordPress community.
The best way to keep updated with regular trends & updates is by subscribing to best WordPress blogs and websites.
Further more, such blogs can provide excellent tutorials and tips that will help you manage the WordPress-powered websites.
Here’s the list of 100 WordPress Related Websites:
# | Name | Founder | Categories |
---|---|---|---|
1 | WordPress Official Blog | Matt Mullenweg | WordPress News |
2 | WordPress Planet | Matt Mullenweg | WordPress Updates |
3 | WordPress.tv | Matt Mullenweg | WordPress Videos |
4 | WP Beginner | Syed Balkhi | News & Tutorials |
6 | WP Candy | Ryan Imel | News & Tutorials |
7 | WP Tuts | Envato | WordPress Tutorials |
8 | Digging Into WordPress | Chris Coyier & Jeff Starr | WordPress Tutorials |
9 | Theme Shaper | Ian Stewart | WordPress Tutorials |
10 | Bavotasan | Chris Bavota | WordPress Tutorials |
11 | WP Smashing Mag | Vitaly Friedman | WordPress Tutorials |
12 | WP Tavern | Jeff Chandler | WP News & articles |
13 | WPMU.org | James Farmer | WP, BuddyPress & MU |
14 | ProBlogDesign | Michael Martin | WordPress Tutorials |
15 | Lorelle on WordPress | Lorelle VanFossen | WP News & articles |
16 | WP Snipp | Kevin Chard | WordPress Snippets |
17 | WP Snippets | Filip Stefansson | WordPress Snippets |
18 | WP Engineer | Alexander Frison | Hacks & Tutorials |
19 | Web Tools Collection | Madhujit Ghosh | WordPress News |
20 | Kovshenin | Konstantin Kovshenin | WordPress Tips & News |
21 | WP Mods | Michael Jackness | WordPress Themes |
22 | Pippin’s Plugins | Pippin Williamson | Tutorials & Plugins |
21 | wpMail | Cristian Antohe | WordPress Newsletter |
22 | WP Lift | Oliver Dale | Themes & Tutorials |
23 | WP Living | William Ellington | WordPress Videos |
24 | WP Garage | Miriam Schwab | Plugins & Themes |
25 | WP Force | Jonathan Dingman | News & Tutorials |
26 | DeluxeBlogTips | Rilwis | WordPress Tips |
27 | Cozmoslabs | Cristian Antohe | WordPress Tutorials |
28 | WP Theming | Devin | Tutorials and Themes |
29 | DIY Themes Blog | Chris Personified | WordPress Tips & Thesis |
30 | ManageWP Blog | Vladimir Prelovac | Themes & Plugins |
31 | WP Engine Blog | Austin Gunter | News & Interviews |
32 | WP Arena | Ahmad | Themes & Plugins |
33 | WP Recipes | Jean Baptiste Jung | WordPress Snippets |
34 | Do it with WordPress | Dave Clements | Tutorials & reviews |
35 | WP Pro Business | Adam W. Warner | WordPress Business |
36 | Theme.fm | Konstantin Kovshenin | WP News & Articles |
37 | WP Shock | Stuart Duff | News & Tutorials |
38 | WP Mayor | Jean Galea | News & Hacks |
39 | WP Explorer | AJ Clarke | Themes & Snippets |
40 | WP Hacks | Kyle Eslick | WordPress Hacks |
41 | WPIN.me | Ben | News & Reviews |
42 | JupiterJims | Jupiter Jims | WP & Thesis Tutorials |
43 | Sparring Mind | Gregory Ciotti | WordPress + Psycology |
44 | BobWP | Bob Dunn | WP Training & Tutorials |
45 | Page.ly Blog | Joshua Strebel | WordPress News |
46 | WP Lover | Hafiz Rahman | Theme Development |
47 | Themergency | Brad Vincent | WP News & Articles |
48 | WP Rockers | Md Jinnat Hasan | WordPress News |
49 | WP Sites | Brad Dalton | WP News & Articles |
50 | Blondish | Nicole Lipscomb | WP News & Articles |
51 | Instant Shift | DKumar M | WordPress Themes |
52 | WP Square | Bharat Choudhary | Themes & Plugins |
53 | Cats Who Code | Jean Baptiste Jung | WordPress Tutorials |
54 | Kolakube Blog | Alex Mangini | Thesis Updates & Tutorials |
55 | SDavis Media | Sean Davis | Thesis Tutorials |
56 | 1st Web Designer | Dainis Graveris | WordPress Tutorials |
57 | Specky Boy | Paul Andrew | WordPress Tutorials |
58 | WP Cookies | Altaf Sayani | WordPress How-to |
59 | WP Shout | Alex Denning | WordPress Tutorials |
60 | WP Roots | J.R Farr | WordPress Tutorials |
61 | PixoPoint | Ryan Hellyer | WordPress Hacks |
62 | Bill Erickson | Bill Erickson | WP, Genesis & Thesis Tuts |
63 | Gary’s Code | Gary Jones | WP & Genesis Tutorials |
64 | WP Smith | Travis Smith | WP News & Articles |
65 | MFields | Michael Fields | WP News & Articles |
66 | Were WP | Jeremy Herve | WP News & Articles |
67 | Design PX | Jason Manheim | WP News & Articles |
68 | WP Modder | Adam W. Warner | WP News & Articles |
69 | WP Hub | Michael Jackness | Themes & Plugins |
70 | Yoast | Joost De Walk | WP News & Articles |
71 | WP Sift | Stuart Duff | Social Bookmarking site |
72 | WP Vote | Ben Gillbanks | Social Bookmarking site |
73 | WP Hits | Omer Greenwald | Social Bookmarking site |
74 | WP Junkies | Michele Welch & Ditesco | Social Bookmarking site |
75 | WP Deck | Dev | WordPress Themes |
76 | WP Insite | Jason Broadhurst | WP News & Articles |
77 | Perishable Press | Jeff Starr | WordPress Tutorials |
78 | New2WP | Jared | WordPress Tutorials |
79 | Please Advise | Mike, Jake & Chris | WordPress Podcast |
80 | Justin Tadlock | Justin Tadlock | WordPress Tutorials |
81 | WP 101 | Shawn Hesketh | WordPress Training |
82 | WP Life Guard | Sean McCabe | WordPress Training |
83 | Austin Passy | Austin Passy | WordPress Snippets |
84 | Alex King | Alex | WordPress Tutorials |
85 | WP Seek | Oliver Schloebe | WP Search Engine |
86 | Theme Lab | Leland Fiegel | WP Tutorials |
87 | Web Synthesis Blog | Jerod Morris | WordPress Articles & Tips |
88 | We Love WP | Brett Reilly | WordPress Gallery |
89 | ColorLabs Blog | Michael Hutagalung | WP News & Articles |
90 | Woo Themes Blog | Adii | WP News & Articles |
91 | Studio Press TV | Brain Gardner | Genesis Tuts videos |
92 | WP Tids Bits | Amat Noor | WP News & Articles |
93 | Paulund | Paul | WordPress Tutorials |
94 | Hongkiat | Hongkiat Lim | WP News & Articles |
95 | InspireDM | Catalin Zorzini | WP News & Articles |
96 | WMWeb Design Blog | Keith Davis | Genesis Themes & Tips |
97 | Technosailer | Aaron | WP News & Articles |
98 | Cloud Theming | Beau | WP News & Articles |
99 | Otto Press | Otto | WordPress Tutorials |
100 | WordPress Kube | Devesh | WP News & Tutorials |
-By Parthiv Patel
How to Setup Secure Media Uploads
As discussed, it’s important to protect your site by setting proper file permissions on the server. This can be tricky for certain directories such as
On the one hand, you want the most restrictive permissions possible for security reasons, and in most cases the default/recommended settings for directories such as
The good news is that we can have the best of both worlds: solid security for writable directories and suitable file-permissions for working uploads, upgrades, and backups. In this tutorial, you’ll learn how to use .htaccess to secure WordPress’
Note that this technique is written for use in .htaccess files, but is better implemented via Apache’s main configuration file (httpd.conf). If you don’t have access to configuration files or prefer to localize via .htaccess, the following technique will make it happen.
Step 1: Create an .htaccess file for your
This denies access to all files but then allows access only to the specified types of images. If you’re working with other media types such as .zip, .mp3, .mov, or whatever, simply edit the
Likewise you can remove anything that you won’t be using. This is the key to implementing this technique in other directories such as
-By Parthiv Patel
/uploads/
, /upgrade/
, and /backups/
, which need to be writable by the server in order for things like uploads, upgrades, and backups to work.On the one hand, you want the most restrictive permissions possible for security reasons, and in most cases the default/recommended settings for directories such as
/uploads/
work just fine. On the other hand, if your directory permissions are too restrictive, things like media-uploads stop working.The good news is that we can have the best of both worlds: solid security for writable directories and suitable file-permissions for working uploads, upgrades, and backups. In this tutorial, you’ll learn how to use .htaccess to secure WordPress’
/uploads/
directory or just about any other directory, WordPress or otherwise.Securing directories with .htaccess
In my experience studying server logs, WordPress’/uploads/
directory is heavily targeted by malicious scripts and bots. Unfortunately, some server configurations require 777
permissions in order for stuff like Media Uploads to work. Of course, that’s never a good idea, so let’s lock down those vulnerable directories with a bit of .htaccess.Note that this technique is written for use in .htaccess files, but is better implemented via Apache’s main configuration file (httpd.conf). If you don’t have access to configuration files or prefer to localize via .htaccess, the following technique will make it happen.
Step 1: Create an .htaccess file for your
/uploads/
directory (or use existing file if present). In it, place the following code and upload to your server:# secure uploads directory
<Files ~ ".*\..*">
Order Allow,Deny
Deny from all
</Files>
<FilesMatch "\.(jpg|jpeg|jpe|gif|png|tif|tiff)$">
Order Deny,Allow
Allow from all
</FilesMatch>
This denies access to all files but then allows access only to the specified types of images. If you’re working with other media types such as .zip, .mp3, .mov, or whatever, simply edit the
FilesMatch
pattern like so:(jpg|jpeg|jpe|gif|png|tif|tiff|zip|mp3|mov)
Likewise you can remove anything that you won’t be using. This is the key to implementing this technique in other directories such as
/upgrade/
, /backup/
, and so forth. Once in place, this technique prevents bad guys from injecting any PHP or other scripts, but allows images (and/or other specified file types).Other things to try
If you’re trying to get media-uploads to work but don’t want to go all777
on the server, here are some other, more round-about things to try:- experimenting with incrementally more secure permissions until something works
- disabling PHP Safe Mode
- unchecking the auto-organization year/month option
- trying different file paths
- switching hosts if possible
777
permissions, the previous .htaccess technique will help secure your /uploads/
directory against malicious scripts and other nefarious behavior.-By Parthiv Patel
Friday, 16 November 2012
Fridaygram: learning English, counting legs, playing games
By Scott Knaster, Google Developers Blog Editor
Google Developers Live (GDL) is designed to bring you great technical content, live as it happens and archived for whenever you need it. We want GDL to teach you about our tools and platforms, but Eiji Kitamura, a Google Developer Advocate in Tokyo, had another idea: use the captions on GDL videos as a tool for picking up English while learning about technology. As Eiji says, “Learning English and technology at the same time is a killer feature, because it is time efficient, practical, and enjoyable”.
For the best translation, click the CC button and make sure English is selected (shown circled in red in the image above), and not English (transcribed). The English translations are usually available about a week after each event.
Eiji posted about this idea on the Google Developer Relations Japan Blog, and it proved to be very popular, so several other Googlers around the world picked up the thread and created their own versions of the post, translated into Korean, Spanish, and Hebrew, with more translated posts in the works. If you’re a developer learning English while studying a new technology, now you can absorb both at the same time.
Switching our focus to nature, we’ve often wondered: how many legs are enough? 2? 4? 100? The answer turns out to be 562 to 750, which is the number of legs you’ll find on llacme plenipes, a rare millepede species. This creature was long thought to be extinct, but according to a recent journal was rediscovered in 2006 in a densely foggy area of central California. (Note: humans thought the species was extinct, but llacme plenipes itself was not fooled.)
Finally, if you need some new gaming fun this weekend, check out Ingress, a game that takes place online and in the physical world. Just be sure to stop playing and come back to your family at some point.
On Fridays we depart from our usual fare of new tools and events, and instead tell you about general cool stuff you might find interesting. This week we’re wondering: are you disappointed to learn that millipedes don’t really have 1000 legs?
Google Developers Live (GDL) is designed to bring you great technical content, live as it happens and archived for whenever you need it. We want GDL to teach you about our tools and platforms, but Eiji Kitamura, a Google Developer Advocate in Tokyo, had another idea: use the captions on GDL videos as a tool for picking up English while learning about technology. As Eiji says, “Learning English and technology at the same time is a killer feature, because it is time efficient, practical, and enjoyable”.
For the best translation, click the CC button and make sure English is selected (shown circled in red in the image above), and not English (transcribed). The English translations are usually available about a week after each event.
Eiji posted about this idea on the Google Developer Relations Japan Blog, and it proved to be very popular, so several other Googlers around the world picked up the thread and created their own versions of the post, translated into Korean, Spanish, and Hebrew, with more translated posts in the works. If you’re a developer learning English while studying a new technology, now you can absorb both at the same time.
Switching our focus to nature, we’ve often wondered: how many legs are enough? 2? 4? 100? The answer turns out to be 562 to 750, which is the number of legs you’ll find on llacme plenipes, a rare millepede species. This creature was long thought to be extinct, but according to a recent journal was rediscovered in 2006 in a densely foggy area of central California. (Note: humans thought the species was extinct, but llacme plenipes itself was not fooled.)
Finally, if you need some new gaming fun this weekend, check out Ingress, a game that takes place online and in the physical world. Just be sure to stop playing and come back to your family at some point.
On Fridays we depart from our usual fare of new tools and events, and instead tell you about general cool stuff you might find interesting. This week we’re wondering: are you disappointed to learn that millipedes don’t really have 1000 legs?
Labels:
Fridaygram,
gdl
Location:
Mountain View, CA, USA
Thursday, 15 November 2012
Women Techmakers: starting the conversation
By Amanda Surya, Manager of YouTube and Commerce Developer Relations
Google strongly supports diversity and inclusion in all our communities, including users, employees, and developers. In that spirit, last week we launched Women Techmakers (WTM) on Google Developers Live, bringing visibility to talented women leaders in technology industries.
The inaugural week of WTM programming told the stories of 6 prominent women in the tech industry and produced some enlightening conversations. From impromptu in-house product testing, to how to start a company, to crafting that perfect startup pitch, to visualizing the presidential election in a new way, to manipulating petabytes of data, our first class of women techmakers taught us new things technically and professionally.
We hope WTM inspires more women to add their expertise and creativity to the tech community. As Google+ community member Meghan Peters posted, “This is wonderful. What a great series – and very inspiring to see the thread speak up about so many more amazing women! It's this kind of support from each other that can really help push more women to the top.” We couldn’t have said it better ourselves. And we’re only getting started. Read on for video highlights and what’s next for WTM.
Video Highlights
Women Techmakers with JESS3
Visualizing data in new and compelling ways. Check out a visual walkthrough of the 2012 Presidential Election infographics from JESS3.
Women Techmakers with Pixel Qi & One Laptop Per Child
Real-time hardware testing and on-air demos.
Women Techmakers with Startup VC and NewME Accelerator
When startups are angel material & what makes a good pitch.
Didn’t get a chance to tune in live? No worries! You can watch all of the Women Techmakers episodes right now or any time on our YouTube playlist:
What’s next for WTM?
We’re open for suggestions! Share with +Google Developers and @googledevs who you’d like to see on the next Women Techmakers series. Use hashtag (#WTM) and +mention your nominations.
Amanda Surya is Manager of the YouTube and Commerce Developer Relations team at Google. In her spare time, she likes to blog about time-saving tips and of course watch YouTube videos.
Posted by Scott Knaster, Editor
Labels:
gdl
Location:
Mountain View, CA, USA
Tuesday, 13 November 2012
A week of digital innovation on GDL
By Hope Friedland, Agency Marketing
Creative genius meets digital innovation this week on Google Developers Live (GDL). Airing Monday through Friday at 2:30pm EST | 19:30 UTC, the agencies and developers behind some of the coolest stuff in the Creative Sandbox gallery sit down with Google product experts. They’ll talk about what they built, how they did it, and explain their hangups and breakthroughs. Visit the Google+ Event to RSVP, tune in live on GDL, and explore the gallery here.
Here’s the detailed schedule:
Monday: Mobile | archived | featuring Beattie McGuinness Bungay | Watch at http://goo.gl/ITC17
Tuesday: YouTube API | 2:30pm EST | 19:30 UTC | featuring Saatchi & Saatchi LA, Stoop LA, and Ogilvy Paris | Watch at http://goo.gl/0OlFr
Wednesday: DoubleClick Rich Media | 2:30pm EST | 19:30 UTC | featuring Grow and Spinnaker | Watch at http://goo.gl/xKvKp
Thursday: Google+ API | 2:30pm EST | 19:30 UTC | featuring Resn, Goodby Silverstein & Partners and Hook | Watch at http://goo.gl/kdqlW
Friday: Geo API | 2:30pm EST | 19:30 UTC | featuring McCann New York, Goodby Silverstein & Partners and Famous Interactive | Watch at http://goo.gl/AwQT6
Connect with us at developers.google.com/live. Tune into live programming, check out the latest in Google tools & technologies, and learn how to make great apps.
Hope Friedland is a marketing manager on the hunt for cutting-edge digital campaigns that will inspire ad agency creatives to come up with the next big idea (see Creative Sandbox). She's an occasional globetrotter and is especially fond of anything creative, interactive and newsworthy.
Posted by Scott Knaster, Editor
Location:
Mountain View, CA, USA
Monday, 12 November 2012
Scaling automatic web optimization with mod_pagespeed and memcached
By Jud Porter, Software Engineer, PageSpeed Team
Making your website fast is crucial to creating a great user experience – but doing so can be complicated, with many factors to consider. That’s why we created mod_pagespeed, an open-source Apache module designed to optimize your web pages automatically and easily. We recently introduced our milestone 1.0 release, and today, we’re following it up with the release of mod_pagespeed 1.1.23.1 to our beta channel.
With this release we've reduced server load time and improved utilization for large, multi-server environments. We accomplished this by adding support for memcached (a popular, scalable cache), and improving logging and statistics reporting. With memcached, multiple Apache servers share and fetch the same resources optimized by mod_pagespeed. Logging and reporting have been improved to make it easier to keep track of resource consumption and optimization effectiveness across multiple sites hosted by a single Apache installation. These new features make mod_pagespeed even better for high-traffic sites and network providers hosting many individual websites on their infrastructure.
We’ve also added a number of other new features and optimizations including:
Jud Porter is a software engineer working on mod_pagespeed, an Apache module designed to automatically make websites faster. In his free time he enjoys experimenting with cocktails, brushing up on his foosball game, and discovering obscure music.
Posted by Scott Knaster, Editor
Making your website fast is crucial to creating a great user experience – but doing so can be complicated, with many factors to consider. That’s why we created mod_pagespeed, an open-source Apache module designed to optimize your web pages automatically and easily. We recently introduced our milestone 1.0 release, and today, we’re following it up with the release of mod_pagespeed 1.1.23.1 to our beta channel.
With this release we've reduced server load time and improved utilization for large, multi-server environments. We accomplished this by adding support for memcached (a popular, scalable cache), and improving logging and statistics reporting. With memcached, multiple Apache servers share and fetch the same resources optimized by mod_pagespeed. Logging and reporting have been improved to make it easier to keep track of resource consumption and optimization effectiveness across multiple sites hosted by a single Apache installation. These new features make mod_pagespeed even better for high-traffic sites and network providers hosting many individual websites on their infrastructure.
We’ve also added a number of other new features and optimizations including:
- Improved CSS optimization. CSS media queries are now supported, and the new fallback_rewrite_css_urls filter allows partial optimization of CSS containing unsupported or proprietary extensions.
- The default set of optimizers now includes the flatten_css_imports filter, improving out-of-the-box performance.
- Improved mod_spdy interaction with support for custom mod_pagespeed configuration and filters for SPDY enabled clients. This makes it easier to deploy SPDY on your site, which can significantly decrease page load times.
Jud Porter is a software engineer working on mod_pagespeed, an Apache module designed to automatically make websites faster. In his free time he enjoys experimenting with cocktails, brushing up on his foosball game, and discovering obscure music.
Posted by Scott Knaster, Editor
Labels:
faster web,
mod_pagespeed
Location:
Mountain View, CA, USA
Friday, 9 November 2012
Fridaygram: Chrome Jams, distant stars, building footprints
By Scott Knaster, Google Developers Blog Editor
Hey, wanna start a band? A new Chrome Experiment, JAM with Chrome, lets you play music in a web app and jam with others online in real time. You get to pick from 19 different instruments, including drums, guitars, and keyboards. Once you get really good, you can use shortcuts on your (computer) keyboard to play your instrument.
When you’ve had enough fun making music with your friends, you can explore how JAM with Chrome works. Take a look at the tools and technologies that were used to make this app, and for details, read the case study. Then you can decide whether you want to build the next great web app or become a rock star instead.
Speaking of stars, scientists have astonishingly figured out how to learn about light from every star that ever existed. Researchers used the orbiting Fermi Large Area Telescope to look at distant galaxies and measure photons from various places around the universe. This data goes back to the formation of the first stars more than 13 billion years ago.
Finally, back on our own planet, you might have noticed that Google Maps recently added more building footprints to map displays. In case you didn’t count them, over 25 million new building footprints have been added to both desktop and mobile versions of Google Maps. Maybe you’ll see the new footprints while exploring your favorite city this weekend.
On Fridays we detour slightly from our usual posts and publish a Fridaygram, a fun compilation of nerdy stuff to amuse you (and us). And how cool is it that we have orbiting telescopes?
Labels:
chrome,
Fridaygram,
html5,
maps
Location:
Mountain View, CA, USA
Subscribe to:
Posts (Atom)