a:2:{i:0;a:1:{s:4:"data";a:2:{s:7:"entries";a:10:{i:0;a:6:{s:5:"title";s:51:"Review: Building Websites with ExpressionEngine 1.6";s:4:"slug";s:50:"review-building-websites-with-expressionengine-1.6";s:2:"id";s:3:"121";s:10:"typeHandle";s:4:"blog";s:4:"body";s:3180:"
I was lucky enough to be contacted by Packt Publishing to review the book Building Websites with ExpressionEngine 1.6 by Leonard Murphy. I have recently become very infatuated with ExpressionEngine, and I have devoted a lot of time to learning how to use it. This book was a great opportunity to see where my skill set was at.
This book is definitely aimed toward beginning users of EE who have some knowledge of HTML. There is no knowledge of EE needed in order to read this book. So basically anyone who wants to learn how to use EE would benefit from reading this. While I have had some experience with EE, I found many parts of this book that were more of a review for me.
I really liked that Leonard uses a lot of screenshots and code snippets to help walk through how he is doing something. They definitely would have helped me to comprehend some of the EE concepts that I did not understand until devoting a lot of time online doing research.
This book does a great job of covering a variety of topics, from installing EE and creating a calendar to using other modules and plugins. Even though I have prior experience with EE and this book is geared toward beginners, I did learn a few things about EE from reading this book.
There seemed to be a large chunk of the book devoted to applying CSS to the examples to make them presentable. I don’t think there is any need to go through and explain the CSS; people are buying the book for information about EE.
I also wish that the example site that is used in the book were a bit more realistic. I really learned a lot from Mike Boyink’s Building a Church Site and Building a Small Business Site tutorials because the content and functionality of the sites were real.
This book is really the only EE book out there. So if you are one of those people who has trouble learning from online tutorials and needs a book, this is definitely a solid choice to get started with EE. You can get a preview of it by downloading a sample chapter.
I actually wasn’t aware of this, but Mike Boyink also has his tutorials available as books.
";s:10:"bodyBlocks";a:0:{}}i:1;a:6:{s:5:"title";s:23:"Dear Designer, You Suck";s:4:"slug";s:22:"dear-designer-you-suck";s:2:"id";s:3:"122";s:10:"typeHandle";s:4:"blog";s:4:"body";s:281:"As usual, another well thought out post from Khoi Vinh. I agree completely: I thrive on criticism. Even though I’m not a designer, I’m always looking to improve by hearing the thoughts of others.
";s:10:"bodyBlocks";a:0:{}}i:2;a:6:{s:5:"title";s:18:"CSS Naked Day 2009";s:4:"slug";s:18:"css-naked-day-2009";s:2:"id";s:3:"123";s:10:"typeHandle";s:4:"blog";s:4:"body";s:708:"Yep, today, April 9, 2009, is the annual CSS Naked Day. Some people may think it is a huge risk to completely strip the design from my site for a day, but I think otherwise.
If anything, it gives visitors a chance to see my ability to code with web standards. I take the time and effort to write well structured XHTML, so it is still readable without any style applied.
I am striping my design with the CSS Naked Day WordPress Plugin. I encourage everyone else to strip down and show off your body
.
Is anyone else going naked today?
";s:10:"bodyBlocks";a:0:{}}i:3;a:6:{s:5:"title";s:30:"Creating a jQuery Word Counter";s:4:"slug";s:30:"creating-a-jquery-word-counter";s:2:"id";s:3:"124";s:10:"typeHandle";s:15:"externalArticle";s:4:"body";s:266:"I had to code a form at work that required word limitations on each textarea. The article describing how I created a jQuery word counter was published on the ThemeForest blog.
";s:7:"website";s:69:"http://blog.themeforest.net/tutorials/creating-a-jquery-word-counter/";}i:4;a:6:{s:5:"title";s:44:"Presentation to Damscus High School Students";s:4:"slug";s:44:"presentation-to-damscus-high-school-students";s:2:"id";s:3:"125";s:10:"typeHandle";s:4:"blog";s:4:"body";s:1940:"I have been noticeably absent from my blog recently, but for good reason. I was honored when Jeff Brown, a teacher at Damascus High School, asked if I wanted to speak to the students in his advanced web class. I have always been interested in speaking about web development, so this seemed like a great first opportunity.
So basically, Mr. Brown has people in the industry come in and speak to his students every Friday. After looking at the list of other speakers, I sure was nervous. I mean; I go to conferences to see some of these guys speak.
Mr. Brown has a great program going, and I was glad to be a part of it. He is one of the few teachers that actually teach about web standards and is a member of the WaSP Education Task Force. He also gave a presentation at RefreshDC about web education the night before my presentation, that I unfortunately missed.
I decided to focus my presentation on my path through web development, some tips to become successful as a front-end developer, and then how to maintain that success.
I was pretty nervous, and I felt like I raced at times, but I think it turned out well. Mr. Brown has posted the audio from the presentation on his site.
I would love to hear any feedback on the presentation, so let me know what you all think.
";s:10:"bodyBlocks";a:0:{}}i:5;a:6:{s:5:"title";s:35:"Browser Compatibility Master Tables";s:4:"slug";s:35:"browser-compatibility-master-tables";s:2:"id";s:3:"126";s:10:"typeHandle";s:4:"blog";s:4:"body";s:235:"PPK has updated his browser compatibility tables to include more CSS3 testing, new browsers, and more. This is a great resource to determine which browsers support what.
";s:10:"bodyBlocks";a:0:{}}i:6;a:6:{s:5:"title";s:43:"The 13 Most Essential Plugins for WordPress";s:4:"slug";s:43:"the-13-most-essential-plugins-for-wordpress";s:2:"id";s:3:"127";s:10:"typeHandle";s:4:"blog";s:4:"body";s:307:"I feel like right after I install WordPress; I immediately install the same set of plugins. I figured this would be a good topic for a post, so I chose that for my most recent article at NETTUTS.
";s:10:"bodyBlocks";a:0:{}}i:7;a:6:{s:5:"title";s:43:"The 13 Most Essential Plugins for WordPress";s:4:"slug";s:45:"the-13-most-essential-plugins-for-wordpress-1";s:2:"id";s:3:"791";s:10:"typeHandle";s:15:"externalArticle";s:4:"body";s:353:"WordPress is a very powerful and flexible blog/content management system, but the thousands of plugins really help to extend the basic functionality. Here are 13 essential plugins that you should immediately install after finishing the WordPress installation.
";s:7:"website";s:90:"http://net.tutsplus.com/articles/web-roundups/the-13-most-essential-plugins-for-wordpress/";}i:8;a:6:{s:5:"title";s:32:"Dynamically Set a Body Id in PHP";s:4:"slug";s:32:"dynamically-set-a-body-id-in-php";s:2:"id";s:3:"128";s:10:"typeHandle";s:4:"blog";s:4:"body";s:2137:"I have already written a couple of articles about body ids: Set a Body Id Using PHP and Setting Body Ids in Expression Engine, but in a recent project, I was looking for a more dynamic way to do it in PHP and WordPress.
I don’t think it’s necessary to discuss the benefits of body ids because I have already discussed them in the other posts. So if you still aren’t using body ids/classes, go read the articles, and start using them.
This seems so straightforward that I’m not sure why I didn’t start with this method. So basically, I look at the URI, and if it is equal to / then I give it a body id of home. Otherwise, I grab the first “folder” and set that as the body id.
Let’s say that the URI is: /about/team/leadership/. The body id would be about. Ok, the seems easy, let’s get to the code.
Here is our setBodyId function:
function setBodyId() {
$path = $_SERVER['REQUEST_URI'];
if($path === '/') {
$bodyId = 'home';
} else {
$bodyId = substr($path, 1, (strpos($path,'/',1)-1));
}
return $bodyId;
}
If you are using this in WordPress, put this function in your theme function.php file.
Then, you want to call the function and assign it to a variable:
$bodyId = setBodyId();
Finally, if the $bodyId variable is not empty, add the id attribute on the body tag:
<body<?php if(!empty($bodyId)) echo ' id="'.$bodyId.'"';?>>
It’s so simple, yet powerful. This could also easily be recoded in other programming languages. What do you think? Any ideas for improvement?
";s:10:"bodyBlocks";a:0:{}}i:9;a:6:{s:5:"title";s:9:"We Refuse";s:4:"slug";s:9:"we-refuse";s:2:"id";s:3:"129";s:10:"typeHandle";s:4:"blog";s:4:"body";s:289:"You know what, I refuse too. Just because someone tells you that you shouldn’t do something, that doesn’t mean you have to listen. Would you have gotten to where you are today by only listening to other people?
";s:10:"bodyBlocks";a:0:{}}}s:5:"total";i:270;}}i:1;O:25:"yii\caching\TagDependency":3:{s:4:"tags";a:4:{i:0;s:7:"element";i:1;s:29:"element::craft\elements\Entry";i:2;s:40:"element::craft\elements\Entry::section:4";i:3;s:7:"graphql";}s:4:"data";a:4:{s:40:"CraftCMSce35088bdfe0816226cd17fd051a4803";s:21:"0.70573500 1736501960";s:40:"CraftCMS2743a789e8993267a348eee1ee7e4450";s:21:"0.67537500 1713205687";s:40:"CraftCMS2ac34726f299f7e18e449d8e536c67f8";s:21:"0.84529700 1741778847";s:40:"CraftCMS3817d4a648fcfac939af46605323feb0";s:21:"0.36746500 1735923287";}s:8:"reusable";b:0;}}