Tag Archives: plugins

Deja Vu

So for this past week, amidst everything coming to the end of the semester, I have been completing the setup and installation on my new laptop. At first, things were going swimmingly — I was downloading everything I needed on my computer to pickup where we had left off for the WordPress final project site.

I did this by scouring the class syllabus and schedule to make sure that I had everything in order. However, some of this setup we had completed in class (which was wonderful) and I had minimal to no memory of what specific files to download or link or create databases for. I ended up Googling solutions and instructions for step-by-step setup and was feeling pretty abysmal until I read that MAMP is inclusive of phpMyAdmin and Apache (duh). So I spent a great deal of time exhausting a search of how to download these things that were already taken care of, it was relieving but frustrating.

When setting up my WordPress development environment, I was posed with the same problem I encountered when Laura was substituting — my child theme was not appearing. I redid the entire process about four times. I did read that there is a “Going Live” set of instructions via Smashing Magazine and I think that this will serve as a solution to my confusion. At this point I needed a break from continual failure and will try this tomorrow and move forward by starting on some CSS I plan to implement.

I have been rewatching the video from Laura regarding child themes and the reading list plugin, and by doing so I am starting to find a little bit of clarity (yay) as this projects comes to an end. For some reason there was a disconnect in my understanding as to how GitHub and WordPress related to one another for the project, but now I realize that it is just being used to document my progress as I complete it. Anyways, heres to finishing strong and sorry for the multiple emails, Professor Greg.

Learning and re-learning

I’m officially at the “just keep going” stage of a big project like this. It’s been hard (but getting a bit easier as it goes on) to compartmentalize the project in my head. I am a very linear and visual thinker, and things like recipes, instruction manuals, building projects come easily to me, and I’m consistently underestimating how long each step is taking me.

Little problems with the mechanics of my plugins are popping up every now and again, and the fixes almost always come from finding somebody online who have made some similar mistake and reading up on how they’ve fixed it. This is a workflow that I’m still getting used to. The real anxiety comes when I feel like I’ve followed instructions to a T and something just doesn’t work…ugh.

On the other hand, I’m having a fantastic time pushing my styling. I’ve done some sketches and designs for the overall feel, and even if it doesn’t come together exactly how I envision, I’ll be happy because at least I had a direction. I know enough about myself that I can be successful when I create as I go, but having an end vision especially when talking about design language is a more surefire bet.

Overall, I’m feeling tentatively optimistic, I’m looking forward to workshopping and in the end, actually having a working website that I can say I put together pretty much fully myself. Although I’ll take as much time to do it as I can get!

website – Musician’s Haven

What: I want to create an internationally respected musician’s hub that provides reliable information and reviews on instruments and other gear for beginners to professional performers.

Who: My audience would be musicians or aspiring musicians looking to purchase gear. It’s terribly easy to waste money on items that you either don’t need and waste time putting off things you do need. I’m hoping to have a few dedicated “contributors” which would serve as a middle ground between Reddit and Wikipedia where site visitors could get reliable information.

Why: I’ve spent a lot of money over the past 9 years since I started playing music. If I knew what to buy and what not to buy, I’d be alot better off. Similar to used cars, I think having a “go here, do this, don’t do that,” resource for newbies would result in fewer people purchasing lemons.

Code customization:

  • I will include a search bar with PHP
  • I will include a gallery at the top of the home page, and a different gallery on each page
  • I will create a “shopping cart” for bookmarking items with JavaScript
  • I’ll use CSS to style the pages
  • I will have an embedded 16:9 format video playing at the bottom of each page demoing some instruments (depending on what page it is)
  • ill create a search bar using PHP
  • I’ll embed a Twitter feed

—- More specs below—

Above the fold front page automatic slider (4-5 images) of different types of gear (acoustic guitar, bass, microphone set-up, etc.)

Below the fold two column review section (featuring an image of one instrument and a user’s highly rated review of the instrument)

Top right “shopping cart” that would essentially be the “bookmarked instruments” personalized and accessible from your login)

  • Home
  • Acoustics(guitars, bass)
  • Electrics(guitars, bass)
  • Other instruments(ukulele, cello, viola, violin, etc. etc.)
  • Vintage gear(includes every aforementioned category but only features higher quality and very expensive gear. Some will be repeat posts in this page)
  • Price guide

The review section would include the MSRP and the average selling price online (Ebay, for instance) to give the user an idea of how much they should reasonably pay for said instrument

Each page would have an above the fold slider with 8-9 images of instruments that in a traditional cms would be easily refreshed with newer content throughout the month.

As for more details on features, I’d have changing text overlaying the images on the sliders, along with neat button navigation that starts from the beginning. I don’t believe we went over this in class, but I want to know how to create an easily accessible pop-up comment/Leave a message feature. (screenshot attached). It would give users the ability to leave a comment about something they want more information on, whether it’s an instrument we’ve featured or one that we haven’t.

Updated Final-pitch

ACROSS AFRICA “Telling The African Story From The African Perspective”

What: For my final project as mentioned earlier, I am going to develop a unique but interactive news website that will focus mainly on stories about Africa’s culture, politics, arts, business and other pertinent stories from my beautiful continent.

Why: This will provide an alternative to the usually different stories we hear from Africa’s wildlife and how a rare lion or elephant was found. While those are important and significant stories from Africa, often the culture and lifestyles of its people is either ignored or rushed through.

Who: I am excited to see how far this will go in reaching out mainly to  Africans in the diaspora and anyone interested in African stories.  I am looking forward to build a website like this or better.

Code Customization

1 Code Customization 1 (TO-DO)

  • What – Main News tab
  • Why – will add versatility to the content on the website and leave the viewing control in the hands of the viewer.
  • How – Use Pseudocode/HTML, CSS
  • Timeline -Research code, feedback review, modification and finalize.

2 Code Customization 2 (TO DO)

  • What – News Ticker
  • Why – To be able to display multiple headlines at the same time allowing audience get a sneak peak into other news items while reading other stories.
  • How – HTML/CSS
  • Timeline -Research code, feedback review, modification and finalize.

3 Code Customization 1 (TO-DO)

  • What – Subscription form
  • Why – To help gain insight into people who visit the website and get user feedback for potential improvements.
  • How – Use a Pseudcode
  • Timeline -Research code, feedback review, modification and finalize.

4 Backup- Breaking News/Happening now

5 Backup -Trending News on Social Media

6 Backup-Video News

 

When did we get here?

As I started to dive into the reading materials for week 7, I couldn’t help but reflect on how far we have come in the course. It feels like just yesterday we were learning HTML and CSS, but here we are at week 7 about to put all the pieces together through WordPress!

When I took a glance at the syllabus, I remember seeing WordPress and thinking about how this class was going to be a piece of cake. Man was I wrong! WordPress.org feels a lot more complicated than the WordPress.com that most of us know and love. It looks like this time I will be in charge of fully customizing my site and making it my own. Since I had a lot of trouble setting up the local host and linking the website, I am pretty scared to see how my final project turns out in the end.

I was incredibly overwhelmed while I was reading the WordPress assigned readings because it felt like a lot of information to fully comprehend. Although I know I will have to revisit the WordPress readings, I feel like they were introduced by our instructor for a reason. From reading these excerpts, I think it is incredible how helpful WordPress.org is in creating documentation entry excerpts that assist users in better understanding customization options.

There are a few things I have taken away from this week’s reading and it all starts with there bring three major components to WordPress: core, themes and plug-ins. From these three components, I should not touch the core function because when it updates as a new version, it overwrites core files. Then, I noticed that “plug-ins” came up multiple times in the different WordPress readings. It seems that  plug-ins will give me the customization that I want for our site since everything goes through it. Overall, it sounds like there are a lot of options for designing my site and I have no idea where to start. 🙁

Thinking Outside the Box

This week, I had a tough time thinking of what I want my final project to be. I definitely needed a refresher on the languages I’ve learned and what I can do with each. It’s also been an experience learning what I can do with plugins and with PHP.

I felt like I had a lot of ideas, but also no ideas. Creating the portfolio site feels like a metaphor for my life. I have a grand vision, but the details are fuzzy. I want my site to be a revamped version of my current e-portfolio that gives a holistic view of Daja, the person (rather than Daja, the journalist).

I’m interested to see what I can do with plugins. Eventually (can’t promise it’ll be with this portfolio site), I hope to build my own plugin. The functionality is what excites me about web development. I guess if I became a web developer, I’d focus on front-end development (if not full stack). This class has really expanded my thinking.

I was looking back on the course description this week and something that stood out to me was “we do want you to come away with some coding skills and greater technical fluency.” Eight weeks in, I feel that I will definitely walk away with greater technical fluency. I find myself examining everyday processes that I see when I browse the internet and being that annoying friend that tries to explain how everything works.

Cheers to new knowledge.

 

 

APIs and Building My First Plugin

I had heard of APIs before taking this class, but this week’s readings and videos did a good job of breaking down this complex topic. The kitchen analogy used in the “What is an API?” video was helpful in terms of understanding how an API works as a messenger that communicates user requests and delivers responses back to the user. I recently booked a flight using the online travel service Kayak, and did not think about the fact that Kayak was using airline APIs to find me flights based on the parameters I defined. Kayak accesses the airline APIs and aggregates information from them based on user requests.

I also tried out one of the examples provided in the video about REST APIs. I typed the sample URL into my search bar and tweaked it for my hometown of Mendon, Massachusetts, which resulted in a page written in JSON that allowed me to access the GPS coordinates for my hometown (latitude: 42.1056525, longitude: -71.5522859). I then went to the main Google Maps site and entered these coordinates, and was taken directly to the center of my hometown on the map. I will have to do a bit more research on the topic of APIs in order to more fully understand how the concepts can be applied to WordPress. I imagine that APIs are probably used in a lot of plugins that access data from outside websites, such as those that pull in data from Twitter or Instagram feeds.

I spent this weekend working on the modifications for my WordPress site. As I mentioned in last week’s blog post, I was able to create my child theme and activate it on my local site, but I still have to play around with the fonts and colors of the site. I plan to do that towards the end of my project, once all of my other modifications are complete. One specific question I had regarding editing the styles.css file for my child theme is, how do you edit the fonts if your parent theme uses the Font Awesome toolkit? For example, I tried changing the font for my site header, but it is not working, and I’m thinking it’s due to the fact that my parent theme uses Font Awesome and thus has multiple CSS files. How do I change the fonts in this case? 

I also decided to tackle the custom post type modification by building a custom post type plugin. I was able to write the code for this plugin using these instructions, but ran into a lot of issues on the way to getting it to work. For example, when I tried to activate the plugin from my wp-admin panel on my local site, I kept getting the following error:

Parse error: syntax error, unexpected ” => array(‘ (T_CONSTANT_ENCAPSED_STRING), expecting ‘)’ in /Applications/MAMP/htdocs/finalproject/wp-content/plugins/therunningglover-run-post-plugin/therunningglover-run-post-plugin.php on line 18

I could not for the life of me figure out what the issue on line 18 was, and so back to Google I went. Luckily, the Stack Overflow gods were there to help out, and I figured out that I had forgotten a single quote (‘) on line 18 of my plugin code. I fixed the issue, refreshed the page, and the plugin was activated. However, the custom post type was still not appearing in my admin panel, and so I decided to go back to square one and rewrite my code using the steps listed on the WordPress codex. I got it to work within five minutes. Lesson learned — use the WordPress codex first. I now have a custom post type on my left admin panel called “Run.” Now I’m working on adding a custom metabox called “Run Details” with metadata (custom fields). One question I have is, how do I get my custom post type posts to show up on the home page of my site, rather than just under the Blog page?

This coming week, I want to download a plugin for Strava and see how I can use it to pull in information about my most recent running routes onto the sidebar of my site. When modifying the code of an existing plugin, do we need to create a “child plugin” (if that is such a thing)? I will also attempt to build a lightbox slideshow to display some of my photographs, but may end up using a plugin for this. I’m also planning to load some of my files using the FTP client later this week, to ensure everything is working correctly on my hosted site. I’m feeling a bit overwhelmed at all that I have to do in the next week-and-a-half, and am hoping that I can at least get three quarters of my proposed modifications done before the final project deadline.

Regarding GitHub, should I only be syncing files that I’m coding myself? For example, the plugins that I downloaded and added to my page from WP also synced to my final project GitHub repo. Should I remove the code for these plugins from my final project repo since these are not something I coded myself? If so, what is the best way to do this?

Diving into WordPress Documentation and Using PHP

This week’s readings about the various features of WordPress helped me think in more detail about how I want my final project site to look and what features and customizations I want to include. I spent a lot of time last week browsing through the many themes on WordPress.org, and am still deciding between two very similar themes — Retina and Wisteria. The “What is a Theme?” article was helpful in terms of thinking about the various parts that make up a theme and why plugins are important to use when adding functionality to a site.

The reading about plugins was interesting because I’m still going back and forth about whether or not I should create a new plugin to link my Strava profile to my site, or instead customize one of the existing Strava plugins available on WordPress. I need to do more research and take a closer look at the code on some of the existing plugins to see what exactly I would like to customize. I also will likely have to contact the creators of the original plugin and obtain their permission to customize their plugin.

After reading the documentation about custom fields, I decided that this was something I’d like to incorporate into my final project. I’m not sure, however, whether this would count as an actual customization, since it seems pretty straightforward and easy to do using the <?php the_meta(); ?> tag. Is this really all there is to it? If so, does this count as a customization?

After completing the readings, I had a better understanding of how WordPress uses multiple PHP files and templates to create themes and custom websites. Speaking of PHP, one of the other assignments for this week was to add PHP to our existing HTML homepage that we started building earlier in the semester. I created a contact form — modeled after the W3 Schools form — featuring four fields and labels (name, email, your website, and comment). After a lot of Googling and trial and error, I was able to figure out how to use the <textarea> function in HTML to make my comment box larger and able to accommodate multiple lines of text. For anyone interested in learning how to do this, this Stack Overflow thread might be useful. I’ll likely build my own PHP form as one of my customizations on my final project site.

I almost forgot to mention that I officially purchased my domain and hosting on GoDaddy! My site will be called The Running (G)lover (a not-so-clever play on both my last name and the topic of my site), and my domain is www.therunningglover.com. I ended up purchasing the economy hosting plan for three months, but have high hopes that my finished site will look amazing and that I’ll be motivated to keep it going after the semester ends.

I’m looking forward to working on my final project site this coming week!