Tag Archives: WordPress

Word Press and PHP Drama

This week I spent most of my time re-reading through the WordPress readings and thinking about what I should be doing for my final project. Because I hope to be able to build on what I create for the final project, I want to make sure that this is something I can keep up with and that the theme I choose has enough flexibility to fit different types of content (i.e. recipes, reviews, about me, etc.). What I was able to come up with you can find in my updated Final Pitch post, but to give you a synopsis, I want to create a website that is focused on food, but also gives my audience/readers a glimpse into my life and who I am. I want to feature things about myself, what I’m interested in and what I’m doing in hopes to be able to connect with others like me.

What I took away from the readings was the complexity of WordPress. It is not as straightforward or easy as it seems. There are levels of complexity that are giving me a little anxiety knowing we have to navigate WordPress to create the site. On the other hand, as stated in my last post, being able to use a platform like WordPress also gives us a safety net to rely on, which I really appreciate.

For my PHP code assignment, I added a comment box where site visitors could input their name, email address, and comment. I explain in my code, that the comments will all be replied to individually and thus the email address is needed. I want to be able to incorporate this into my final project as a customization. I also want to be able to incorporate liking the content because I think user engagement is most important. That being said, the PHP code assignment was not as easy as I thought it would be. While this might be my favorite code-type we’ve learned thus far, in practice, PHP can be difficult. At first, I was having trouble echoing the different boxes I had created. I Googled my way through it, but I’m hoping to be able to learn it on my own in the future.

Questions:

  • For the next class, will be going through how to create the repository for our final project in GitHub?
  • Will you walk us through how to install WordPress on our hosting service (like GoDaddy)?

Final Project Pitch Post: A Running Blog — and Digital Accountability Partner

For my final project, I’d like to create a personal site about one of my hobbies — running. I started running two years ago, and my goal is to run a full marathon (26.2 miles) in 2018.

I am pursuing this topic for my final project because I feel as though I need something to hold me accountable to actually go running consistently. I am envisioning this site as a place where I can track all of my training runs, my favorite routes, photos, and details about my past and upcoming races.

Some of the customizations and features that I’d like to build into my site include a page where I can discuss my training, a custom post type to track the different details of my runs, and a widget or plugin that connects to my Strava profile and shows my recent running routes.

Goals: 

  • The goal of my final project site will be to serve as a means to hold me accountable to run consistently as I begin my marathon training journey. The earliest I would run a marathon would be March 2018, and I don’t need to actually start training to run 26.2 miles until about four months before the race, but I’d like to build up my baseline fitness, strength, and speed in the meantime.
  • A second goal is to gain a readership made up of both new and experienced runners and anyone who enjoys or is interested in the sport of running, and to foster conversation among this community.
  • My third and final goal is to use this site to demonstrate my basic understanding of web development principles and the WordPress platform.

Audience: 

My site’s audience will include my friends and family who want to keep up with my progress, as well as like-minded running enthusiasts who are seeking information and motivation. I’d love to tailor my site around living and running in Washington, D.C., which might make my target audience more specific to runners who live in the D.C. metro area or other urban areas.

How I’ll Achieve My Goals: 

  • I plan to have different pages on my site, including a page called Run, which will feature recaps of my runs using the custom post type I will create — as well as an About Me page and a Contact page where readers can submit questions, comments, and ideas.
  • I will also link my Strava profile — where I currently track all of my runs — to my site, so that my readers can see my recent and past running routes.
  • I will customize my chosen WordPress theme with new colors and font types. 

Theme: Retina

Track:

I plan to make several modifications and customizations to my site that are client-side and server-side, so I will pursue the full-stack track. My planned modifications are listed below.

Planned Modifications: 

  • I plan to create a child theme so that I can make changes to the colors and fonts on my site.
  • I will create a custom post type called “Run” with a custom metabox called “Run Details.”
  • I will render four custom fields within the metabox, including neighborhood, distance, date, and time. The latter two fields will indicate the date and time that my run actually occurred on, and will be separate from the date and time stamps that are already included on each published post. This will allow me to closely track the details about each of my runs.
  • I will create categories called “Training Run” and “Race” to distinguish these types of posts from more general blog posts.
  • I will install a text widget on the main sidebar of my site using shortcode from my Strava profile to show my most recent running routes.
  • I will add a plugin for a contact form, as well as social media contact buttons.

URL: www.therunningglover.com

My site will be called The Running (G)lover, which is a play on both my last name and the topic of my site. People are constantly mispronouncing my last name — it rhymes with lover, not clover — and so in addition to my site being a digital accountability partner, I’m hoping it will help people to learn the correct pronunciation of my name (and of the Glover Park neighborhood where I also live — it’s pronounced like the word “glove” with an “r” on the end!).

PHP Lessons and Introduction to WordPress

I found this week’s Codecademy lessons on PHP to be much easier than the previous lessons on jQuery and JavaScript. I was able to move through the lessons without too much trouble. I’m still wondering what the exact purpose and advantages are of using PHP (other than users not being able to see all of your HTML code because it is being run on the server instead of in the browser), but perhaps this is something we will address in class this coming week. I found Greg’s lecture on PHP and his step-by-step tutorial for setting up a local server on our laptops to be very helpful, as I am typically able to comprehend things better when I have the opportunity to directly and immediately apply the steps and skills being taught.

The introductory lecture about WordPress also urged me to think in greater detail about what I’d like to work on for my final project site. As I detailed in my brief pitch post, I’d like to use this as an opportunity to create a blog about the topic of running, which will serve as a sort of digital/online accountability partner on my quest to run a full marathon in 2018. I’ve been having some trouble getting the motivation to run consistently over the last few weeks, and I’m hoping that having this site as a place to document my training and progress will motivate me to get back on track.

I went ahead and did a few of the readings that are now listed on the syllabus for next week, and I found these to be very useful in terms of helping me to decide how I want to structure my final project site. The reading about creating plugins was interesting because I think I’d like to attempt to create a plugin that links between my Strava profile and shows my most recent run. I did a little bit of research and found that at least one Strava plugin for WordPress already exists, but I’m hoping to either create my own or to customize an existing plugin in some way. Further customizations to my site might also include creating a child theme, which will enable me to alter some aspects of my site’s theme. I’m a bit confused about when it is appropriate to create a parent theme versus a child theme. WordPress indicates that if I want to make extensive customizations, then I should consider creating a parent theme, but I’m not exactly sure what is considered to be extensive. Is there a clear explanation for when it is appropriate to create a parent theme versus a child theme?

Overall, I’m looking forward to learning more about the features that WordPress offers and seeing how I can apply them to my final project site.

PHP and WordPress Intro

Compared to the past couple of weeks — having to navigate JavaScript and JQuery — this week’s Codecademy lessons on PHP were actually fairly simple and easy to understand. Besides the foundation I could draw on from our previous work, I think what really helped was that I was very conscious this week about spacing out the work and coding a little each day. I know several of my classmates have been experiencing issues with Codecademy being finicky in these lessons, and I ran into a similar issue for the first time this week when the site took too long to read the for loop I created. I couldn’t figure out what was wrong with the program and eventually had to reset the code and refresh the page several times for it to finally work.

Overall, I think the one thing I’m still really struggling to understand with PHP is its function: how it fits in with the other languages we’ve learned and  how all of these come together to form a website. I understand the idea that PHP is read by the server and HTML, CSS, and JavaScript by the browser, and I understand the functions of the last three and some of the functions of the first. However, I’m struggling to see the big picture and exactly how we’ll be utilizing all of these in our final project. Hopefully, as we delve more into WordPress and our individual sites, this will become clearer.

This week, I also started delving into the WordPress readings, as suggested, and the reading on themes really helped clarify some of my lingering questions from last class — like what exactly the difference is between a theme and a plug-in. I hope to finish most of these readings before Wednesday.

For the final project, I submitted a pitch for creating a personal site. I am looking forward to this week’s closer look at WordPress so I can get a better understanding of what I want. Right now I’m worried my ideas for what to create and how to modify my site will either come out too ambitious or not ambitious enough.

WordPress, PHP, You Name It

Before starting to read the readings about WordPress, I was excited about the upcoming final assignment. I have some experience using WordPress in journalism classes at Wake Forest where I did my undergrad, but I haven’t used it to make something of personal significance. Moreover, it’s comforting to know that we’re not building everything from the ground up, but working off of templates that have been created. I think this will help with making the site more dynamic in nature and focusing on using code to customize the site to fit the subject matter. Not to mention, it takes some of the pressure off of having to think about both the big picture of a site and on a granular level with the functionality. WordPress will make it manageable to be able to do both.

Something that stuck out to me when completing the reading (that are now due the following week), that I think is important is: “Good themes improve engagement with your website’s content in addition to being beautiful.” At the end of the day, while we’re making this website for ourselves, we have to continuously keep the user in mind and ensure that they have a pleasant user experience. Otherwise, no one will want to visit our site. With that being said, in order to do this, I will have to work on both the front and backend of the site to be able to deliver a good site.

It was very helpful to go through each of the readings. It broke down, step by step, what we will have to do, including the taxonomy and naming of the folders. The guides, in particular the Child Themes guide, will be very helpful as we start creating our WordPress sites.

Other important information I noted:

  • WordPress debugging tool
  • Plugin: controls the behaviors of the feature
    • made up of PHP, CSS and JavaScript
    • builds additional functionality to what WordPress themes can already do
  • Theme: controls the presentation of the content
  • Development environment: develop the WordPress environment locally on your server (why we downloaded MAMP) and supplement this with a text editor like sublime or atom.

Surprisingly, I really enjoyed the PHP Codecademy lessons. It made sense. I didn’t feel as lost when I was writing out the code because I already understood variables, strings, functions, etc. I hope to be able to work more in PHP and continue developing those skills because it makes more sense.

Evolution: Coding and Communication

Link to Github profile: https://github.com/amaliaks

It was interesting to see the developments of the computer starting from Konrad Zuse’s first binary code computer to Hopper’s involvement in creating COBOL or moving from numbers to words to control what a computer does. In 50 years, the internet, computers and programming has advanced dramatically. From someone who has not lived without computers and internet, it’s hard to imagine a time when computers and the internet did not rule technology and everyday life. Now, we are dealing with net neutrality laws and internet equality.

As the world of journalism, news cycles, and under the current administration, it is important to constantly be rethinking our thinking. It is no longer viable to be comfortable with your current skillset, you have to evolve, change, and adapt to new technologies and be conscious of societal values. In order to be successful as a communicator, today, I think it’s an important skill to understand the world of coding for professional growth and the success of your clients. I am new to coding and it can be overwhelming to look consider learning a new language and applying that to the work that I do everyday. At the same time, I know I have to rethink the way I approach content and strategy and have a full understanding of the different coding and framework methods to be successful; I hope to get that out of this class.

I have used WordPress in the past, but have never considered the rights or why the site was created. It is another platform to be able to connect people. While posting, it’s important to keep in mind WordPress’s bill of rights or core freedoms: The freedom to run the program, for any purpose.

  • The freedom to study how the program works, and change it to make it do what you wish.
  • The freedom to redistribute.
  • The freedom to distribute copies of your modified versions to others.

Main takeaways from what distinguishes free software from nonfree software:

  • The freedom to run the program as you wish, for any purpose (freedom 0).
  • The freedom to study how the program works, and change it so it does your computing as you wish (freedom 1). Access to the source code is a precondition for this.
  • The freedom to redistribute copies so you can help your neighbor (freedom 2).
  • The freedom to distribute copies of your modified versions to others (freedom 3). By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this.

Free software is where the world is going—collaborating to create better and more useful for users around the world.

Reading the article “Basics of UNIX Philosophy” left me with the most questions. I am lacking the context of how to apply this philosophy without being able to see it first hand.

APIs and general generalisms

Looking at the API tutorial article has again shown me how I can learn a lot in this class and then still need further explanation of something after reading it. I missed last class and I don’t know if we went over this, but I am unclear about what exactly an API is supposed to do for us as end-user journalists, even after reading the paragraph “The fundamental question: What can this API do for me?” several times. I would like to have a nuts and bolts answer to the question, what do I want to get out of the API, and how do I do that?

As far as the project is going, I have been thinking that the best way to go about it is to take the Twenty Twelve theme and fiddle around with the controls that WordPress allows us to do, and see where that puts me. Then I would like to get into a discussion (with myself!) about what I want the site to do that WordPress doesn’t have a specific allowance for, and then work on how to build it myself or whether it is implausible. I am pretty confident that WordPress can do a lot of the things that I want to have on the site because it looks pretty interactive from the controls that I have looked into.

Jennings Final Project Pitch

I have changed gears for my final project idea. I wanted to do something with video editing, but now I am thinking that is a bit too specialized and more work than I expect to be able to complete in a semester. I still would like to fiddle with it once I get better with the languages, but not for now.

I am looking to build a blog site for sports that can be customized. I think of it as a portfolio of sorts for me, as I ultimately want to write about sports and I think I could customize it to have some cool interactivity on it. I envision adding a section that aggregates tweets that reference the blog or certain sporting events (like the Stanley Cup Finals currently) on a rolling ticker on the right, and then content and allowing for video and pictures to be uploaded directly by me or other admins.

I want to keep the content to small chunks on the main page, with a “read more…” link similar to what WordPress already does, and make it so that the front page always keeps some pictures and videos static in place (not necessarily the same pic or video, but the same place on the page) to ensure that the page is visually appealing on first view.

So that is where I am starting from, with changes to be made at irregular intervals according to the whims of Greg, me, or the gremlins in the code.

Still confused, but less so.

The weeks that we have been doing this have shown me that I can be getting better at coding, while constantly being confused about one thing or another. As soon as I get the answer to something I don’t understand, the next thing we do reinforces the idea that I am learning via the “trial by fire” method. (Lots of fire.)

The JavaScript course 3 and the jQuery courses 1 and 2 were actually easier than I had experienced the past two weeks. I am really pleased with how I am progressing through the Codecademy courses and I can see how much I have learned. Even though I still feel like I have jumped into the deep end of the pool, I am excited to put my (limited) experience into practical application and see how I do.

I really want to get into some actual web-based setup, so that we can see tangible results (including massive failures!). I want to attempt to make some things work on my website, realize that they don’t work, try to figure out how to make them work, give up and Google why it’s not working, and then laugh about how simple the mistake was that I made. This is how I learn best (hey, don’t judge me, haha!).

The only part I am confused about for this week was the web hosting and setup of our sites. I got the GoDaddy and installed WordPress on it, but I didn’t do anything that I remembered from class (I wasn’t able to do them in class because my laptop wasn’t able to handle the “newfangled” software, and so I wrote everything down). I’m not sure if we’re going to go over it again in class, or it was a “FYI” kind of thing, or if we will use it later?

I was a bit upset that GoDaddy couldn’t sell me the domain I wanted, and there’s nothing even on the domain, so I wanted to take it over, but alas, I think I will be able to move on from it.