[ad_1] WordPress, the content management system the internet loves. You can use it for years without needing to tackle PHP, but eventually you’re finding yourself needing it. You go to Bing and search “php for beginners” and you find yourself here. The journey to learn PHP for WordPress development is long, but let’s start! We’ll kick off this WordPress coding tutorial with a little summary of PHP’s role in WordPress, and then start to build up from there. Using PHP in WordPress: Useful for Everyone, Necessary for Developers You don’t really need to ever write PHP code as a WordPress user, WordPress business owner, or other similar role. A minority of the people who use WordPress on a daily basis even know what PHP is, never mind know how to write code in it. But WordPress developers, WordPress developers must use PHP. But I’m getting ahead of myself… WordPress Runs atop PHP on the Server Before we jump fully into our PHP for beginners tutorial, some background: Web servers, it turns out, are just computers. And those computers need to have underlying layers they can run on. For most WordPress sites, that breaks down to be: Linux (the operating system, like Mac OS or Windows), Apache (the web server, thing your browser talks to), MySQL (the database, where posts live), and PHP (which coordinates with the database, OS, and files to build web pages). I wrote a lot more about this in our “WordPress LAMP” article: A WordPress LAMP?! An Introduction to WordPress Infrastructure PHP is a Programming Language So, hopefully the above made you aware that PHP is something that WordPress uses under the hood. It’s a programming language, and the language that WordPress server-side code is written in. (In the web browser of both administers and visitors, WordPress often also involves languages called HTML, CSS, and JavaScript). PHP was one of the first and most popular languages that people used to build HTML documents (aka “web pages.”) Its popularity is a little more complex than I want to cover here, but I did write a “Why PHP” article over on Thoughtful Code for those who are interested in that. In short: PHP is a logic-programming language which you can use to control which HTML a page shows, either in WordPress or outside of it. The files that make up both WordPress themes and plugins are mostly using PHP to build the pages that you see when you visit a WordPress site in your web browser. Learn PHP for WordPress and You’ll be Able to Modify Themes, Make Plugins As we just covered, both WordPress plugins and themes use a lot of PHP. (Though in 2022, the amount of PHP you’ll see in themes has just gone down…) Essentially, everything in a plugin is enabled by the PHP code you write. For a WordPress theme, some functionality is coming from WordPress PHP and some will be in HTML you write into your theme template files. You’ll generally need less PHP expertise to make good themes than good plugins for WordPress, but it’s an important skill in either case. While we won’t get into this much in this introductory PHP WordPress tutorial, for those wondering, the basic way that WordPress plugins work is with WordPress hooks: actions and filters. If you already understand what PHP function, variable, and strings are, you can jump right into that with this guide: WordPress Hooks, Actions, and Filters: What They Do and How They Work A Beginner’s PHP Tutorial for WordPress Alright, now that we’ve got that WordPress stuff out of the way, we can start in earnest on our short PHP programming for beginners tutorial. We’ll focus on a few core things: what PHP looks like, what things you must understand to make any sense of PHP, and what next steps make sense. PHP 101: Where We Start on a PHP Tutorial for Beginners So, PHP as we mentioned above started as a way to create more dynamic HTML. As such, you’ll know you’re writing PHP, and not HTML, in a .php file because it’ll be boxed in by what are most commonly called “PHP tags.” Those PHP tags are things that fence off PHP from your HTML, and vice-versa. Although there is still some interaction. Here’s an example: <!– file.php –> <html> <?php echo ‘Hi from PHP’; ?> </html> What would loading file.php up from your web server show you in your web browser? It’ll show the words, “Hi from PHP”. (The word echo in PHP essentially lets something exit PHP-interaction-land and show on the page. What’s more, if you viewed the page source in that browser, you’d also see that the <html> opening and closing tags come through. Where not controlled, all HTML from a PHP file just shows in your browser. Last note: that first line, which starts <!– is an HTML comment. Comments are lines in code which shouldn’t do anything, but may help you or another programmer make sense of the program later. In PHP, most comments are broken out with to forward slashes, // comment here, or fenced with /* */ characters, like this: <?php /* Nothing in these lines will show or do anything */ echo ‘Not a comment’; // What’s to the left will run, but this text itself won’t // Neither will this ?> You’ll also want to note that our echo line ends with a semicolon. All lines of PHP will generally end with a { (of which more later) or a semicolon ;. Statements like echo should always end with a semicolon. This is a kind-of-strange convention across many programming languages. Variables, Integers, and Strings, Oh My! We just showed your first PHP data type: the string. A “string” is a common programming-language term for a sequence of characters. In our specific case above, our string was the sequence of characters “Hi from PHP.” In PHP, a string can be differentiated from other words (the ones that are just the program
Continue readingTag Archives: Development
Awesome Motive Acquires Sandhills Development
[ad_1] Hey, WordPress fans. We are checking in with your latest dose of weekly WordPress news. This week, there were a number of acquisitions in the WordPress space. Awesome Motive acquired Sandhills Development, the company behind Easy Digital Downloads, AffiliateWP, WP Simple Pay, Sugar Calendar, WP Simple Pay, and the Payouts Service. Meanwhile, LearnDash joined StellarWP and Liquid Web’s growing family of brands. Beyond that, the new update on the WordPress core editor makes it easier to add a title to a group of blocks and allows you to group any block. We also have a lot of news, tutorials, and roundup posts for you as usual. Let’s get to all of this week’s WordPress news… WORDPRESS NEWS AND ARTICLES TUTORIALS AND HOW-TOS RESOURCES [ad_2] Source link
Continue readingAwesome Motive Acquires Sandhills Development – WP Tavern
[ad_1] Awesome Motive, the company behind OptinMonster, WPForms, MonsterInsights, and other popular WordPress plugins, has acquired Sandhills Development. The deal includes all of the company’s WordPress products and services: Easy Digital Downloads, AffiliateWP, WP Simple Pay, Sugar Calendar, WP Simple Pay, and the Payouts Service. The majority of the development team will be joining Awesome Motive to continue supporting the products. In a personal farewell to the WordPress community, Sandhills Development founder Pippin Williamson confesses he lost his passion for WordPress and the web: In the last few years I discovered a truth about myself: I had lost my passion for the web and building software products. I used to absolutely adore WordPress and building plugins to extend it and power businesses. That passion helped create amazing platforms that have helped tens of thousands of businesses grow, succeed, and thrive on the web, and I am so immensely proud of that. But when the passion is gone, the drive and motivation to build great things leaks away as well. It has been several years since I last felt truly inspired and motivated to build something with WordPress. Sandhills Development has created an iconic and beloved suite of products with more than 100,000 users. Its Payouts Service paid out over a million dollars to affiliates in May and is on track to pass $2M this year. The service has more than 6,500 individuals and businesses registered and able to receive deposits and more than 1,350 businesses setup to pay their affiliates. The financial details of the deal were not disclosed but Williamson has always been transparent about Sandhills’ financials. In last year’s summary he disclosed that the company brought in $4,331,814.12 in revenue from plugin sales, affiliate agreements, services, real estate, and payout processing, with a net profit of $232,201 after heavily investing in new projects and payroll increases. Many of Awesome Motive’s products use EDD, so the company has a vested interest in the product’s future, alongside others in the WordPress ecosystem who depend on it. Williamson explained in his announcement why he selected Awesome Motive as the new home for his products: Awesome Motive has been an innovator in WordPress for more than a decade and during that time they have built infrastructures, processes, and a level of polish rarely seen in the WordPress industry. The learnings and strategies that have made Awesome Motive so successful will be applied to the whole suite of Sandhills products, making the products better than ever before and at a pace previously unseen by our customers. Despite Williamson’s professed confidence in Awesome Motive, multiple sources inside Sandhills Development expressed reservations about the deal. The company was called to an all-hands meeting where employees were given the option to jump ship or continue on with Awesome Motive. “Well the thing that made this the most frustrating was that there was little room for discussion, or choice,” one source said. “We were given a very short heads-up (2 weeks), and no opportunity to discuss employment terms. Basically it was ‘in two weeks, you’re working for Awesome Motive, or you are out of a job.’” Awesome Motive currently employees more than 200 people across 36 countries. For years, the company has been known for its aggressive sales tactics and upsells in the WordPress admin. These concerns, along with the change in culture from Sandhills, gave some employees reason to pause when considering the change. “Given AM’s questionable business practices, such as using screen recorders on many employees’ laptops, trigger happy firing tendencies, and incredibly aggressive non-competes, it felt like we were being coerced to work for a company that was so, so far from the fundamental values that brought us to Sandhills in the first place,” one source within the company said. Despite this criticism, the same source said they believe “every product acquired will become considerably better,” with Awesome Motive’s investment. “Going into the meeting with Syed, I’d describe the prevailing sentiment as cautiously optimistic,” Sandhills’ former Director of Operations Kyle Maurer said. “Obviously none of us were involved in this decision; that was Pippin only. We didn’t ask for this and didn’t know what to expect. But our many questions have been answered and at this point everyone is wholly on board. Syed’s excitement and enthusiasm are infectious and, along with his team, he’s done a tremendous job welcoming and accommodating us. It feels like new energy has been injected into the organization and I’m personally very optimistic about the future.” Awesome Motive Founder and CEO Syed Balkhi confirmed that in the past the company has used time tracking software on its employees but “shifted away from doing so as the vast majority of our employees are on full-time salary now.” “Many people may think of AM as one large company, but I always see us as a collection of over a dozen small companies,” Balkhi said. “Each product team operates independently and will continue to do so.” Balkhi confirmed that no pricing changes are planned for the products. He said Awesome Motive also plans to share several internal tools the company has built for EDD to help scale the business. Acquisitions are ramping up in the WordPress space, with major players like Automattic and hosting companies scooping up smaller businesses and plugins to create a suite of products tailored to their users. Some question whether this is a healthy part of a maturing ecosystem or a trend that may stifle the unique range of diverse, smaller products that have always been available to WordPress users. “I know that our goal is to help small businesses grow and compete with the big guys, and our growth is a result of us living true to our mission,” Balkhi said. “We never set out to become investors. “As you can see the products that join AM — the founders have been around for a long time and they know of us already. Founders choose to join us because we are an independent bootstrapped business not some big PE /venture-backed corporation.”
Continue readingA World Where (Some) Block Development Is Merely a Templating System With No Build Process? – WP Tavern
[ad_1] What if WordPress developers lived in a world where we could create PHP-based templates that would output data on the front end and handle editable fields via the block editor? Or, we had a system where we could create blocks without a build step? While there are many reasons the modern WordPress editor is not the best fit for everyone just yet, one stumbling block has been building custom interface components. The ecosystem has a deep history of creating bespoke solutions for clients using PHP. These have been custom meta boxes and form fields in the classic editor screen for the most part. When WordPress 5.0 launched with its block editor, it turned the world upside down, often leaving agencies and freelancers with no way to move forward without dedicating massive resources to learning React to build blocks or interact with the new editing screen. The solution? Stick with what you know. It was cheaper and already seemed to do the job well. As we talk about the support window for the Classic Editor plugin, the WordPress project needs people to provide tools for this segment of the ecosystem if it ever plans on bringing them along for the ride. Solutions such as ACF Pro and Genesis Custom Blocks have bridged some of the technical gaps. However, the user experience can be sub-par when using server-side rendering in the block editor. That method works well for some types of blocks but not all. We need to take this one step more. Mark Jaquith, a lead WordPress developer, shared a few questions from Helen Hou-Sandí, another lead developer, around this idea and a basic concept about what this might look like: Weekend exploration, egged on and sparked by @helenhousandi: “What if building custom blocks for the Block Editor was as easy as supplying attributes and a block of HTML? What if this produced React editing code and PHP rendering code without a build step?” pic.twitter.com/r86Phu88SX — Mark Jaquith (@markjaquith) August 30, 2021 Hou-Sandí followed this with a detailed post on the concept, but she pointed out that this is merely an exploratory phase. “The React-based WordPress block editor (sometimes referred to as Gutenberg) is a powerful tool for WYSIWYG editing that continues to prove to be somewhere between a speed bump and a roadblock for long-time WordPress developers who historically have been more PHP-centric,” she wrote in the post. If you are a WordPress developer, there is a not-so-small chance that you are thinking, Yep, I have hit a few of those speed bumps and crashed into that roadblock a few times. This is unlikely news to you. What might start winning hearts and minds is acknowledging and understanding where much of the problem lies for custom development. “By leveraging the familiar parts of PHP-based templating and creating a bridge that demonstrates the power of React when combined with the markup and styling already being done for the front-end, we can de-duplicate code, help demystify the critical role of JavaScript in modernizing WordPress, and serve as an on-ramp for PHP-centric developers to create compelling and delightful 1:1 live preview editing experiences,” wrote Hou-Sandí. This all boils down to the process of, essentially, writing some template code that works on both the front-end and editor without all the complexities of currently setting up and building blocks. That is an exciting prospect, evidenced by the numerous likes, retweets, and replies to Jaquith’s tweet. Hou-Sandí pointed out that the current thought process is primarily about easing the transition for custom client block solutions and not necessarily for WordPress itself. However, that does not mean that this or a similar solution might not be a part of the core platform’s future. Gutenberg project lead Matías Ventura replied to Ben Gillbanks in the same Twitter thread that it was definitely something they were considering. “From a core perspective we had to ensure the primitives and interactivity is not compromised, but there’s no reason why that should imply a full JS toolchain for simpler blocks. Lowering barrier of entry is important.” Like several others, Gillbanks thought that such a system would have made an easier transition for PHP-centric developers from the start. However, the project was not ready for that at the time, according to Ventura. “It’s tricky to do something like this from the start until the compile target APIs are robust enough,” he tweeted. “We are getting to a point where many of the interactive properties are clustered into primitives and components, which makes a templating approach more appealing.” Automattic developer Riad Benguella shared a similar solution in the past week, launching the Blocky project on GitHub. With his approach, developers utilize the block.json file to create the template or view component and run it through a simple build step to generate the block’s code. While it is not too early to hope and dream, it may just be a bit premature to begin seriously considering whether such tools will land in core WordPress. However, seeing some of the lead WordPress and Gutenberg developers at least openly talking about solutions is something worth paying attention to. Like this: Like Loading… [ad_2] Source link
Continue readingIs WordPress Development Really All That Hard To Get Into Today? – WP Tavern
[ad_1] Oh, how easily we forget the WordPress of 10, 15 years ago. We are spoiled. We are spoiled by the gluttony of documentation and tutorials, a wealth of knowledge created over more than a decade. We are spoiled by our own expertise, built-in our more vigorous youth, now sitting on our haunches as we have aged along with our beloved platform. We have grown to become the proverbial grumpy old men. “Back in my day, we didn’t need all these fancy tools to help us write code. We pulled ourselves up by our bootstraps and built everything from scratch.” I kid. Sort of. I count myself among the old-school developers who helped build the WordPress that so many are still nostalgic about — I think I have earned the right to joke about myself. They were “simpler” times but not really. Having been in the community as long as I have, I can remember the backlash each time a new feature landed. I recall the days when there really was non-existent documentation for pretty much everything. Lately, there has been a growing conversation around the difficulty of overcoming WordPress’s current barrier to entry for developers. This has been an ongoing discussion for a few years now, but the latest flare-up comes on the heels of a tweet by Chris Wiegman: The deeper I get with modern WP dev the more I understand why newer devs don’t like to work on it. This is not the same project as it was in the past. The learning curve is now extremely high regardless of past experience. I built my first block plugin in a few hours about a month ago. When writing on the experience, I said the barrier to entry was much higher than when I had built my first plugin in 2007. Having had the time to sit back and think about that, I am not sure it was a fair statement. We tend to view the past through rose-colored glasses while forgetting the real struggle. What I had wanted was to build the plugin in 30 minutes. Had everything been in PHP, that would have been an easy feat for me. Objectively, I am an expert (or close enough) in the language. However, my JavaScript knowledge is 10 years behind. It had been a while since I had been challenged in that way. That was a distressing experience for someone who had become comfortable in his own skills. I griped about the docs. But, let’s be honest. WordPress has never had the sort of deep documentation that could teach a budding developer everything. I know this because I have written at least a couple hundred tutorials in my career. Nearly every time, I dug into the project’s source code to make sense of it, which allowed me to teach other developers how to work with various features. And many other developers in the space did the same. In time, WordPress.org added more robust developer documentation, but this was not built overnight. It is a constantly evolving project. I also built my first block type with vanilla JavaScript. No build tools. No React docs open. Just plain ol’ JS code in my editor. I needed to crawl before I could walk, and getting that first iteration of the code into a workable state was necessary before I jumped into anything more complex. In the days after, I re-coded it all to use more modern JavaScript and compiled it with webpack. A week after that, I built a second block plugin with more advanced features. Was it hard? Definitely. Was the barrier to entry higher than when I first developed plugins? Probably. Truthfully, I did not struggle as much, but I am also at a different point in my life. At 37, I no longer have quite as much drive and likely less capacity for picking up new skills as quickly as in my late teens and early 20s. However, I have a strong foundation and enough experience to overcome some of the hurdles I encountered. Would a 20-year-old me struggle with this JavaScript landscape more than a strictly PHP-based WordPress? I doubt it. Both had huge learning curves for someone new. Someone’s first introduction to Subversion or Composer can be just as scary as their initial dive into webpack and npm. For a fresh mind, an open canvas that has yet to be painted with over a decade of doing things the “WordPress way,” I am unsure if the barrier to entry is so much higher. For us old-schoolers, our world has been flipped upside down. There is no denying that. The Gutenberg project, which is at the core of nearly every new WordPress feature, moves so fast that it is next to impossible to keep up with while also upping your skills. It is easy to get overwhelmed. When this happens to me, I usually take a step back and return when I have had a chance to rest my mind. Contributing to the WordPress ecosystem has always had one barrier or another. Whether it be the privilege of time, knowledge of PHP, or some other skill, the project has left some people out. That is changing in some ways. Some parts are now available to users that were never accessible before. This is easiest to see from the theming side of things. “I wish people would see that theme development is heading the opposite way,” tweeted Carolina Nymark. “The entry barrier for designers and new developers will be lower. When people get stuck saying, ‘But I can’t use my hooks in a block theme,’ it is because they are looking at what exists today, not ahead.” Having spent more time on the theming side of the block editor than plugin development, I agree wholeheartedly. Theme authors have been given a clean slate, or at least by the time block-based themes are supported in core WordPress, this will be true. While I could write ad nauseum on
Continue readingFull Page Patterns Are Still the Missing Piece of Block WordPress Theme Development – WP Tavern
[ad_1] It was the early days of the Gutenberg project. Many on the Theme Review Team and those in design circles were trying to wrap their heads around this new concept called blocks. In particular, we wanted to know how it could be applied to theme development. There were many discussions on the pros and cons of the early editor. Overall, there was a bit of cautious excitement in the air, our optimism tempered by a buggy version of alpha-level software. The block system could potentially solve one of the biggest hurdles of theme development: inserting default/demo content for a full page into the editor. I cannot remember who initially explained the idea, but it was a lightbulb moment for many at the time. The general concept was pre-building a custom homepage or any page design that users could choose visually. It would all be done through a standardized block system, and we would no longer need to rely on piecemeal theme options, third-party plugins, or attempt to work around the review team’s “do not create content” guideline. No one really knew how this would work in practice, but we understood the theory of how it would make the life of a theme developer much simpler. In October 2019, Automattic developer Jorge Bernal opened a ticket titled Starter Page Templates. His team was working on a template selector for mobile apps, and the WordPress.com Editing Toolkit already had the feature. The goal was to bring it to the core platform, allowing third-party theme designs to build on top of it. Starter page templates idea initially shared in the ticket. Because the term “template” is overused in the WordPress space, I will refer to these as “page patterns.” This naming convention was coined by Noah Allen, a software engineer for Automattic, in the ticket. It makes sense because we are actually talking about a page’s content rather than the wrapping template. The Genesis Blocks plugin is one of the best ways to understand the page pattern concept. It has a Layouts button at the top of the editor that, when clicked, creates an overlay of designs to choose from. Selecting a full-page layout from Genesis Blocks. These designs are split between sections and layouts. Sections are the same thing as patterns in core WordPress: small, reusable pieces of starter content. Layouts are full-page starting points for users to create various types of pages. The StudioPress/Genesis team was not the first to market this concept. However, they have created a well-rounded user experience on top of the WordPress editor. You will find similar experiences via GoDaddy’s onboarding process for its managed hosting service. The Redux Framework allows much the same, and Editor Plus offers templates and patterns from the Extendify library. That initial excitement has waned a bit. It felt like that early promise was a dream that would never be a reality. Theme authors, especially in the commercial space, have long offered home-brewed solutions for the one-click insertion of full-page content. Whether via a ThemeForest project or a popular theme on WordPress.org, there are endless examples of everyone solving the same problem. One might even argue that these custom inserters are so ingrained into theme agency systems that anything WordPress offers at this point will not appeal to those who have already brought their solutions to market. Where the core platform has failed to meet user demands, our development community has stepped up. Some of you may be thinking that the current block patterns system works for this. Yes, and no. Theme authors could shoehorn full-page designs into it, but the user experience is lacking compared to third-party solutions. Patterns today are one of the best theming tools available, but they fall short of what is needed to see this thing through. The foundation of this feature exists via the Patterns API. From the theme author’s perspective, they merely need a method for flagging a pattern as a full-page layout, separate from the others. However, the UI and UX flow need an overhaul. The flyout panel for the current inserter does not cut it, especially on large screens. A fullscreen overlay has become the de facto standard among other systems. Users should also have another option between selecting from an existing page pattern or starting empty upon creation. “I think this would be so useful to have in the core,” wrote Ana Segota of Anariel Design in a recent comment on the ticket. “I created 2 FSE themes so far and also our latest premium theme is made with block patterns and this is exactly what I thought and talked with few people about. It would be great when a user opens a new page, to chose design/page patterns however we called it and it starts editing it right away. Most of the users just want to add a page, choose a layout and start adding their content.” Of course, this is not a revelation to the average theme author who works with end-users daily. Inserting or importing entire page designs into WordPress is one of the most common requests. WordPress is almost there with its current patterns system. We just need to take it to the next level. Like this: Like Loading… [ad_2] Source link
Continue readingEdupack Is Tackling Higher Ed With WordPress, Looking for Development Partners – WP Tavern
[ad_1] “We’re basically building the Jetpack for Higher Ed,” said Blake Bertuccelli as he pitched me on the idea of Edupack, a project still in its early stages. He and his team are looking for more advisors to join the eighth round of their once-monthly braintrust events. It is a project they began in November 2020, now coming to fruition. Feedback is crucial to pushing such undertakings out of the gate, and the team needs more of it. Bertuccelli listed several focal points for the Edupack project: Onboarding: New campus users can set up a beautiful campus WordPress site with a few clicks. Archiving: Stale sites are automatically archived to save campus resources. Reporting: Accessibility, plagiarism, and resource usage can be accessed from the Edupack dashboard. Brand and Content Management: Approved Higher Ed content patterns and universal brand controls keep sites beautiful and consistent. Configuration Management: Cloud-controlled configuration settings means admins can control millions of sites from one place. Onboarding form with Tulane-branded elements. “Our onboarding form offers pre-built sites for users to start from,” said Bertuccelli. “So, if a scientist needs a new site for their lab, the scientist can select a pre-built lab site from our onboarding form then add in their unique content.” Bertuccelli is Edupack’s CEO. He called himself a “forever learner” and is currently reading A History of Western Philosophy by Bertrand Russell. “I paid for my Tulane education by coding WordPress themes,” said Bertuccelli. “After college, I founded one of New Orleans’ first WordPress dev shops (Decubing). A year ago, I presented on building a self-publishing platform with Multisite at WP Campus. The feedback was phenomenal, and two blokes from Birmingham offered to work on a plugin with me. A few months later, we launched Edupack’s MVP. Since then, folks from Harvard, Dartmouth, and about 17 other universities have been working with us to make WordPress an even better CMS for Higher Ed pros.” The “two blokes” he is referring to are his co-founders, Nathan Monk and Matt Lees. They run a WordPress shop called SMILE. Monk is serving as Edupack’s CTO. Lees is the Chief Creative Officer — Bertuccelli called him “Lord of the UX.” Altogether, the three co-founders have over 30 years of experience working with Higher Ed and WordPress. The Edupack team is making accessible content a priority, which is a primary issue for Higher Ed. The goal is to offer A11Y reports inside of the WordPress dashboard and tie them into publishing workflows. This would notify users of errors as they publish content. “Our accessibility reports tie into another feature we are launching this month: site archiving,” said Bertuccelli. “Campus users graduate and often forget about their sites. Edupack sends a notification to a user if the site hasn’t been accessed, then adds an “archived” meta value to the site that super administrators can take action from. Setting up automated archiving. “Devs often recode thousands of sites to add new Campus branding,” said Bertuccelli on the reasons behind Edupack. “Department budgets are drained on resources for stale sites. Institutions are sued over inaccessible content or misused branding. “Edupack intends to automate website management so that Higher Ed pros can focus on supporting education.” The following video is an introduction to Edupack: Join the Braintrust Session Every third Wednesday of each month, Edupack holds a “Braintrust” event. Bertuccelli says it is the best way to get involved. The session lasts for an hour over a Zoom video chat. The next event is scheduled for July 21, 10 am – 11 am (CDT). Each session focuses on a single question. Next week’s question: “How can we enhance WordPress blocks for Higher Ed?” “We’ll demo Edupack updates, brainstorm solutions for block enhancements, then wrap up with action steps for us to do by next month,” said Bertuccelli. “Folks who manage WordPress sites for global institutions and companies have attended our last seven braintrusts. Any Higher Ed pro is welcome!” Those interested can also keep track of progress via the Edupack blog. Pricing and the Future There is currently no publicly available pricing list. The project’s FAQs page says the team is still tuning the costs, and Bertuccelli remained quiet on any hard numbers. “Community colleges can’t afford tech used by bigger schools,” he said. “That’s not fair. Edupack will be priced so that every institution can afford the service. We haven’t thought about pricing beyond that.” Universities that wish to get check out the project should schedule a demo from the site’s homepage. Edupack has around 20 institutions serving as development partners and guiding the roadmap. The team invites new schools to join every few months. Currently, Tulane and the University of Gloucestershire are using Edupack. Harvard and Dartmouth should be next. The service is limited to universities and colleges at the moment. However, the team would eventually like to expand across the education sector. After that, we will have to see. “Edupack’s features can be applied to any industry where users run lots of sites,” said Bertuccelli. “I could see ad agencies using Edupack, hosting companies integrating our tools, and School Districts running their site network via Edupack and WordPress.” Like this: Like Loading… [ad_2] Source link
Continue readingBuddyPress 9.0 Scheduled for Short Development Cycle to Ship Block-Based Widgets Ahead of WordPress 5.8 – WP Tavern
[ad_1] BuddyPress 8.0 was just released earlier this month on June 6, but the core development team is gearing up for a short development cycle for 9.0. The release will be specifically targeted at getting BuddyPress core widgets ready for WordPress 5.8’s new block widgets experience. Contributors are aiming to hit the following timeline to ship 9.0 before the next major WordPress release: Beta: July 8. RC: July 12. Final: July 16 BuddyPress entered the world of blocks with the release of version 6.0 in May 2020, allowing users to insert a specific Member or Group into content. Version 7.0, released six months later, introduced blocks for featuring a list of members, a list of groups, and the ability to embed a public activity post. Over the next few weeks, BuddyPress contributors will continue the process of migrating the rest of the BuddyPress component widgets to blocks. These include the following: Blogs Recent Posts Widget: A list of recently published posts from across the network BP Core Login Widget: Shows a Log In form to logged-out visitors, and a Log Out link to those who are logged in BP Core Friends Widget: A dynamic list of recently active, popular, and newest Friends of the displayed member. Widget is only shown when viewing a member profile BP Groups Widget: A dynamic list of recently active, popular, newest, or alphabetical groups BP Core Members Widget: A dynamic list of recently active, popular, and newest members BP Core Recently Active Widget: Profile photos of recently active members BP Core Who’s Online Widget: Profile photos of online users BP Messages Sitewide Notices Widget: Display Sitewide Notices posted by the site administrator BP Nouveau widgets: BP Latest Activities: Display the latest updates of your community having the types of your choice BP Nouveau Navigation Widget: Displays BuddyPress primary nav in the sidebar of the site. (Must be used as the first widget of the sidebar and only once.) In addition to building a block for every BuddyPress widget, contributors are aiming to make it possible to transform existing BP widgets into their corresponding BP block. With the new block widgets screen imminently landing in WordPress, BuddyPress has to make this move forward to keep pace with the progress of the block editor’s march beyond use in the content editor. Otherwise, BuddyPress users would need to disable block widgets with the Classic Widgets plugin in order to maintain access to BuddyPress core widgets. Contributors are also working on creating a new Follow component, a frequently requested feature which would use the now abandoned BuddyPress Follow plugin as inspiration. The feature will work similar to Twitter following or the Facebook follow button that allows users to see public activity posts for those they are following. The Follow component is being built as a plugin first and will ship with 9.0 if it is ready in time. Like this: Like Loading… [ad_2] Source link
Continue readingDevKinsta Review: Local Development Environments On Demand
[ad_1] It’s common advice when developing a WordPress website – set up a local development environment. Because of this, there are some great products that help you spin WordPress sites up in a snap. This DevKinsta review looks at the latest, and potential greatest. Underneath that familiar purple hue is a set of essential tools and services to create a local website. From there, you can push your site live to your Kinsta server, direct from the dashboard. In this DevKinsta review, we’ll look at how to set up a local development environment using the tool. Though, the main bulk of this post will be looking at how DevKinsta works and helps you to create sites. A Introduction to Kinsta For the unaware, Kinsta is one of the major players when it comes to WordPress hosting. It’s a top-tier solution that offers rock-solid stability and a dependable infrastructure. It runs off of the Google Cloud platform, and packs in an immense number of features to help you create and maintain your WordPress website. Speed is a fundamental focus with Kinsta. Servers run on Nginx, using LXD containers. If this doesn’t mean much to you, know that they’re both fast and reliable. There is also a dedicated focus on security and stability. There are hardware firewalls in place, and near-constant monitoring of your site in various ways to make sure uptime remains high. To tie everything together, there’s a custom dashboard in place called MyKinsta. It’s great to look at, easy to navigate, and gives you almost everything you need to manage your sites. In comparison to dashboards such as cPanel, it offers top-notch usability. It’s the perfect complement to Kinsta’s server infrastructure. An unmentioned aspect is how Kinsta cares for its customer base. The support provision is fantastic, and this extends to new additional features. This post isn’t about Kinsta’s hosting though – this is a DevKinsta review. We’ve talked about the platform in depth in a previous article. It also takes a spot in our managed hosting roundup. You can gauge our opinion through those articles, but the TL;DR is that Kinsta is one of the very best hosts available. The Basics of DevKinsta Given that Kinsta tries to provide the functionality users will need to manage their sites, it’s no surprise that development is part of the thought process. Kinsta itself is developer-friendly in a few ways. We’ll get onto the competition later in this DevKinsta review, but for now, it looks to fill a gap others have missed. It’s a tool in a line of similar solutions that helps you create new WordPress sites fast. The idea is to make it super-simple to build and experiment with your site within a local environment. It’s more accurate to say that the Docker-based DevKinsta is a suite of tools to help you create local sites. In the box, you’ll get the following: A full stack, including WordPress, Nginx, MySQL, and a choice of PHP version. Support for HTTPS protocols, so you can test this aspect out before hitting a live server. A database manager in Adminer. Compared to phpMyAdmin (the competing solution) it’s lightweight and encapsulated in a single file. Built-in error logging functionality. Email testing that’s a snap to use. DevKinsta is also multilingual, and offers cross-platform support for Windows, macOS, and Linux. We’ll get onto using DevKinsta in a few sections time. For now, let’s clear up why you’d want to use DevKinsta in the first place. Why You’d Want to Use DevKinsta to Create Local WordPress Sites Before we get into using DevKinsta, it’s worth taking some time to discuss why you’d want to develop in a local environment. There are a few basic reasons for doing so: You can keep your live site and development site as far apart as possible. There’s no rush to develop your site, as the local environment means you can take as much time as you need. Expanding on the previous point, you can better reserve your server’s resources. You can better define your development workflow, from local to staging, and finally to your live server. If you’ve not used a local development tool such as DevKinsta before, you might have reservations about adding yet another step to your workflow. This is understandable, because an extra layer of software could give you a potential efficiency hit. The good news is that DevKinsta slots straight in, and in lots of cases will improve your development and turnaround time. If you’re a user of another local development tool, DevKinsta offers lots of functionality, with state of the art tools. Of course, if you’re developing for a Kinsta-based site, there’s no reason not to use DevKinsta. Next, this DevKinsta review is going to look at the day-to-day use of the tool. Using DevKinsta One of the first taglines you’ll read about DevKinsta is how it offers one-click site creation. This isn’t 100 percent true, but it’s so close that the reality isn’t worth quibbling over. Once DevKinsta is up and running, it takes a minimum of three clicks to build and deploy a new WordPress site within your local environment: As an aside, if you’re using a dark mode on your computer, DevKinsta looks odd given that the site itself is full of lots of white and purple! Of course, this doesn’t affect the tool at all. When you first power up DevKinsta, you come to the Sites screen. This is an overview of all of the sites you’ve created, and there are three options to open your site. You can open the front end, the site’s folder on your system, and the site’s wp-admin page. There’s also a traffic light menu that lets you delete the site, and open the database manager: Clicking on a site from the list opens a Site Info panel, which has everything you’ll need to manage your site on a few levels: The great benefit of this this section (apart from the super layout) is that
Continue readingWordPress Theme Development: Core Concepts (Full Guide)
[ad_1] Welcome! WordPress themes are one of the most important topics that one must understand to be good at WordPress development. Themes underlie the entire visual half of WordPress sites, but often grow to do even more. Because of the visual importance, they’re a great place to dive in if you’re interested in getting to the “code-side” of WordPress. I myself “cut my teeth” on WordPress themes back in 2007 and 2008. WordPress themes were where I started to come to grips with the power (and limits) of PHP, CSS, and HTML. So this course is great for newbies, and those just looking to confirm their understanding of the whole system. An editor’s note before we dive in: 2021 is an exciting year for the future of WordPress themes. For the first time since… kind of forever (that is: the start of WordPress itself)… what themes look like could change pretty dramatically. But today, in April 2021, that future is still a little unclear. And even when that future is clearer (and less likely to change) it’ll still be vital that WordPress developers understand “classic” WordPress themes for a long time. After all, as seasoned WordPress freelancers are well aware, WordPress sites can live for a long time with little more than security updates. So we’ve updated our classic and still vital little free course on WordPress themes as they are in early-2021. Enjoy! Understanding this Free WP Theme Development Course This is an brief introduction to the core concepts of WordPress theme development and comes from the Third Edition of our “learn WordPress development” course Up and Running. We’ve worked hard over the years to write some of the best tutorials on WordPress development, and give them away to readers here at WPShout. Up and Running is our effort to consolidate all that teaching into a single step-by-step resource for people new to the world of WordPress coding. Hopefully, it’s also a little easier to navigate than the mess of links that is this (or any) modern website. This post consolidates a few of that chapters from Up and Running together. While the course is much more exhaustive on both WordPress theme and plugin development than this is, we’re sure this will give you a very solid foundation to start from. The three important concepts of WordPress theme development we’ll cover here are: The WordPress Template Hierarchy Processing Posts with The Loop Adding Functionality with functions.php We’ll take you through each one on the linked articles at the bottom of every section. Those are a very accurate representation of what you’d find in Up and Running. Although on the real course site, it’s a little easier to keep your place. We have a completion-tracking WordPress plugin for that 🤓. Like you’ll find in Up and Running, all of the linked chapters here have a Summary Limerick and Quiz to reinforce what you’ve learned at their end. 🙃 Core Concept 1 of WordPress Theme Development: The Template Hierarchy The first thing that’ll help you get a sense of WordPress theme development is getting a sense of what all those theme files do. Some of them may be obvious to someone who has done a fair amount of web development, like style.css being the place for your CSS styling rules. But most the work you do in WordPress theme development comes down to understanding the WordPress template hierarchy. WordPress template hierarchy underlies a lot of what’s useful and complicated about WordPress. WordPress themes involve a bunch files. And understanding those files is the key to understanding WordPress development. All the files in the template hierarchy have a few things in common: They have names that end with .php They contain a version of “the Loop” inside of them (see the next section for more about that) They mostly contain HTML and some PHP code Those three bullet points are the core of what makes up the WordPress hierarchy. But there’s a lot more to understand. And that’s what our article all about it tries to help you with. Reading it will get you along the way to being a full-fledged WordPress theme developer: The Template Hierarchy in WordPress Core Concept 2 of WordPress Theme Development: The Loop in WordPress and What it Means For this one, we’ve taken the time to create a custom post. Like the other of these post’s, this is a chapter from Up and Running. The Loop is one of the things that first scared me (David writing this) about WordPress development. The core thing was that it all sounded so ominous. Whether people called it “WordPress loop” of “The Loop”, I knew that WordPress had that complicated concept involved. Later, after I’d programmed more, I realized that this was just a basic “while” loop, a common construct in almost all programs. But before that, it really intimidated me. If you feel like you’ve got it from that description alone, you might not need to read our full article about what the WordPress Loop is and what it means. Other than the syntax which is distinct to WordPress, it’s not much more complicated than that. But if you’ve never done much coding, you probably should be sure to read the whole article. WordPress theme development is really dependent on getting a handle on how “the Loop” works in WordPress. You’ll hear people talk a lot, as you get into theming, about being “inside the WordPress loop” and outside of it. The article covers all of that and more. If you’ve not read it yet, please do: Understanding The Loop: WordPress’s Way of Showing Posts Core Concept 3 of WordPress Theme Development: Adding Functionality with functions.php Plugins are a big topic in WordPress, and I’ve sometimes heard people describe this next focus as “the plugin of a WordPress theme.” I don’t necessarily agree with that description. I also think it actually add confusion to the issue. That said, inside of your WordPress theme’s functions.php is indeed where you write
Continue reading