Coder Social home page Coder Social logo

elightup / slim-seo Goto Github PK

View Code? Open in Web Editor NEW
62.0 6.0 21.0 2.15 MB

A fast and automated WordPress SEO plugin.

Home Page: https://wpslimseo.com

PHP 66.84% XSLT 1.12% JavaScript 28.67% SCSS 3.37%
wordpress wordpress-plugin seo seo-plugin search-engine-optimization

slim-seo's Introduction

Scrutinizer Code Quality Version

Slim SEO - A Fast & Automated SEO Plugin For WordPress

Currently there are many SEO plugins for WordPress in the market. But these plugins often have too many options and are very complicated for ordinary users. Access to their configuration section, you will easily get lost in a maze of explanations and options that you sometimes don't understand. Besides, there are ads!

So how can an ordinary user use an SEO plugin?

SEO should be an integrated part of WordPress, where users don't need or need very little effort to configure for SEO. The main reason is that not everyone understands the terms of SEO and how to configure them optimally.

So, we made Slim SEO.

Slim SEO is a full-featured SEO plugin, that's done right! It provides a complete SEO solution for WordPress where the configuration has been done automatically. Users do not need to care about their complex and semantic options.

So what does Slim SEO do?

Slim SEO Features

Slim SEO helps you do the following jobs automatically:

1. Meta Tags

The following meta tags are auto-generated and optimized for the best SEO scores.

Slim SEO automatically generates XML sitemap (at domain.com/sitemap.xml) to submit to search engines. With XML sitemaps, your website are indexed fast and completely.

The plugin allows you to output a breadcrumb trail on your website easily. It automatically fetches the information from the current post and output a hierarchy for you. You can also style the breadcrumbs to match your theme style.

Schema is a way that describes structured data for search engines. Based on the data provided, search engines can show the content in the search results page in a more appealing way.

Slim SEO automatically adds structured data to the website via JSON-LD which makes your website more SEO-friendly. Not only schemas are created by the plugin, there are also meaningful connections between them. For example, an article (single post) is the main entity of the current webpage. Slim SEO does that all without any configuration.

  • Setting up redirection rules easily
  • Auto redirect non-www to www and vice versa
  • 404 link monitoring

6. And many more

Premium plugins

View all

Who should use Slim SEO?

Everyone can use Slim SEO!

However, Slim SEO is perfectly suitable for users who prefer simplicity or do not like the complicated options that other SEO plugins provide. It's also a good choice for users with little SEO knowledge and just want to use SEO plugins to automate their jobs.

You might also like

If you like this plugin, you might also like our other WordPress products:

  • Meta Box - A powerful WordPress plugin for creating custom post types and custom fields.
  • GretaThemes - Free and premium WordPress themes that clean, simple and just work.
  • Auto Listings - A car sale and dealership plugin for WordPress.

Installation

  1. Go to Plugins > Add New.
  2. Search for "Slim SEO".
  3. Install and activate the plugin.

That's all. The plugin doesn't have any settings page. Everything is done automatically.

Frequently Asked Questions

How meta title tag is generated?

WordPress already has this feature! All we need to do is add theme support for title-tag. By default, the title tag will have the following format:

For homepage: Site title - Site description For single page or post: Page/Post title - Site title For other pages: Page title - Site title

This format is pretty good!

How meta description tag is generated?

The meta description tag is automatically generated from the post excerpt or post content (in case you didn't enter post excerpt). For categories, post tags or custom taxonomies, their description will be used as meta description.

How Open Graph meta tags is generated?

Open Graph inherits the meta title and meta description. For image tag, it gets from the featured image.

For single posts, the plugin also provides detailed information for article section (the first post category) and article tags (post tags). It also provides additional information such as published time and modified time.

Other tags such as url, site_name, type, locale are quite obvious.

How Twitter card meta tags is generated?

Twitter inherits some tags from Open Graph such as title, description and image. So we only need to set the card type to large image, so the posts appear beautifully on Twitter.

How do I set meta tags for my homepage?

If your homepage is a static page, then it's treated like a normal page. The meta description is generated from page content, and the featured image will be used for Open Graph tags.

If your homepage shows latest posts, then it's already done automatically by the plugin.

Can I change the meta tags manually?

It's not available at the moment. Our purpose is provide a configuration-free SEO plugin for WordPress, so you don't get lost in the options. We might improve the plugin later to add essential options. But for now, it's zero configuration.

If you need custom settings, we recommend using Yoast SEO plugin.

Where is my XML sitemap?

The sitemap URL is located at domain.com/sitemap.xml.

slim-seo's People

Contributors

alexclassroom avatar dependabot[bot] avatar doanducanh avatar eri-trabiccolo avatar grandeljay avatar jessuppi avatar nhatrangnet avatar rilwis avatar spekulatius avatar tanftw avatar tuyenlq94 avatar viet34tqc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

slim-seo's Issues

How to develop locally?

Sorry if I'm making an obvious mistake but I'm trying to learn this right. I cloned your repo and ran into errors after activating the plugin. Is this a mistake or am I doing something wrong?

( ! ) Fatal error: require(): Failed opening required '[...]/slim-seo/vendor/autoload.php' (include_path='.;C:\php\pear') in [...]/slim-seo\slim-seo.php on line 21

SlimSEO causes Plugin to load twice?

I am developing a private WP Plugin and with it I am displaying some HTML via a shortcode.

When I activate SlimSEO I noticed that the Shortcode Hook is being called twice, causing my plugin to bork. Basically I just var_dump the $content in the shortcode callback and with SlimSEO it happens twice.

Do you have any information on this? How can I make SlimSEO and my plugin harmonise? Thanks!

Add noindex status in admin columns and quick edit

Hi,

First, congratulations for this plugin. I love light and simple :-)

I would really like to have noindex status in admin columns and quick edit box, especially for pages, since most of the time a lot of pages don't need to be indexed. It would be easier to check/update. And I guess it's not too much bloat. I hate bloat.

Thanks is advance!
Yan

Consider adding structured data markup for breadcrumbs

Hi!

Currently breadcrumb-shortcode adds basic nav-element where called:

<nav class="breadcrumbs" aria-label="Breadcrumbs">
  <a href="http://localhost:10074/" class="breadcrumb breadcrumb--first">Home</a> 
  <span class="breadcrumbs__separator" aria-hidden="true">»</span> 
  <span class="breadcrumb breadcrumb--last" aria-current="page">Sample page</span>
</nav>

This feature would be better with proper structured data markup.

Google reference: https://developers.google.com/search/docs/appearance/structured-data/breadcrumb

Sitemap error

Hi, when I check my sitemap it shows an error: https://rjview.nl/sitemap.xml

Error loading stylesheet: An unknown error has occurred (805303f4)
https://www.rjview.nl/wp-content/plugins/slim-seo/src/Sitemaps/style.xsl

Do you have any idea how to solve it?

500 links per file is not enough

Great plugin... just discovered it and like how simple it is.

I see, in your doc and code, that you put only 500 links per sitemap citing this Google link:
https://support.google.com/webmasters/answer/75712

This page says nothing about "500 links". It says:

You can submit up to 500 sitemap index files for each site in your account.

I've had sites with millions of pages and the real answer is 50,000 URLs per file.

Here is what Google has to say about building sitemaps:

All formats limit a single sitemap to 50MB (uncompressed) and 50,000 URLs. If you have a larger file or more URLs, you will have to break your list into multiple sitemaps. You can optionally create a sitemap index file (a file that points to a list of sitemaps) and submit that single index file to Google. You can submit multiple sitemaps and/or sitemap index files to Google.

Source: https://support.google.com/webmasters/answer/183668

I hope this helps make the plugin better.

Notification not permanently dismissable on WP 5.6 RC2

Hi,

The notification of the Slim SEO plugin doesn't seem to be dismissable. I can close it, but it pops up again every next time.

I'm using the last version of the plugin and the Release Candidate 2 for WP 5.6. I tested it on firefox and edge.

I'm referring to the main notification with the red bar. For example: "Slim SEO: Your site is not visible to search engines. Fix this →"

Can you reproduce this?

Cannot add/edit link in gutenberg on WP 6.0.3

With SlimSEO plugin active I get this Error when editing or adding a link in the Gutenberg Editor (Disabling the plugin fixes the problem):
This block has encountered an error and cannot be previewed.

image

The console is logging this error:

TypeError: t.useAnchor is not a function

/wp-content/plugins/slim-seo/js/link-attributes/block-editor/dist/index.js?ver=ae57979e6de9bb251ee7:1
....

Context:
useAnchor hook was added in Gutenberg 14.2.0 and WP 6.1

Slim SEO version 3.18.1
WP version 6.0.3

Proposal - prioritization for articles and pages…

Hi,

it would be very nice to have the option to priorize an article or a page.

For example from 0.1 to 1.0, so that the search engine can see what's important and what's not.

So why not add a field to each page and article where you can priorize that content, write it to the data base and render it to the xml sitemap.

Meta description of password protected posts

Hi,

First of all, thanks for developing, open-sourcing and maintaining this wonderful plugin.

I have an issue regarding to password protected posts. The unprotected meta description is shown when I would expect a message that the post is protected.

In the get_singular_value method of the Description class get_the_excerpt($post_id) should be used in stead of directly addressing $post->post_excerpt.

Deprecation warning in link format

I noticed Slim SEO replaces the core/link format in RichText Components, causing a deprecation warning

useAnchorRef` hook is deprecated since version 6.1. Please use `useAnchor` hook instead. 
    at  ...plugins/slim-seo/js/link-attributes/block-editor/dist/index.js?ver=d987f01638a1f0146ba9:1:10964

Plugin Incompatibility with LifterLMS

Hello there,

I am the lead developer of LifterLMS

My team has become aware of an incompatibility between our two plugins. The issue we're encountering is nearly identical to this issue which we've noticed you've resolved in your WooCommerce integration class source

We've recorded some reproduction steps with full details about the conflict here: gocodebox/lifterlms#1181

I wanted to reach out to see if you would consider collaborating with us so that we can favorably resolve this conflict for our shared users.

I could see a LifterLMS integration class (very similar to your existing WC class) introduced into Slim SEO that could easily fix this issue.

If you and your team do not have the internal capacity (but you are interested) we could submit a PR to add the code if you'd be interested.

Thanks!

"non-object" error on posts having no author

I have a number of posts with the author set to 0 (no author) in my Wordpress site.

As a result, Slim SEO throws these PHP notices in XDebug (assumes WP_DEBUG is on):

Notice: Trying to get property 'ID' of non-object in /var/www/html/wp-content/plugins/slim-seo/src/Schema/Provider.php on line 83
Notice: Trying to get property 'display_name' of non-object in /var/www/html/wp-content/plugins/slim-seo/src/Schema/Provider.php on line 86	
Notice: Trying to get property 'ID' of non-object in /var/www/html/wp-content/plugins/slim-seo/src/Schema/Types/Person.php on line 11
Notice: Trying to get property 'display_name' of non-object in /var/www/html/wp-content/plugins/slim-seo/src/Schema/Types/Person.php on line 12
Notice: Trying to get property 'description' of non-object in /var/www/html/wp-content/plugins/slim-seo/src/Schema/Types/Person.php on line 13
Notice: Trying to get property 'first_name' of non-object in /var/www/html/wp-content/plugins/slim-seo/src/Schema/Types/Person.php on line 14
Notice: Trying to get property 'last_name' of non-object in /var/www/html/wp-content/plugins/slim-seo/src/Schema/Types/Person.php on line 15

I looked fixing this by at trapping some of these errors with an empty() check in Schema/Provider.php on line 82:

Changing this:

$author_image = new Types\ImageObject( 'author_image' );
$author_image->add_property( 'url', get_avatar_url( $author->user->ID ) );
$author_image->add_property( 'width', 96 );
$author_image->add_property( 'height', 96 );
$author_image->add_property( 'caption', $author->user->display_name );

$author->add_reference( 'image', $author_image );

$manager->add_entity( $author );
$manager->add_entity( $author_image );

$article->add_reference( 'author', $author );

To this:

if(!empty($author->user)) {
	$author_image = new Types\ImageObject( 'author_image' );
	$author_image->add_property( 'url', get_avatar_url( $author->user->ID ) );
	$author_image->add_property( 'width', 96 );
	$author_image->add_property( 'height', 96 );
	$author_image->add_property( 'caption', $author->user->display_name );

	$author->add_reference( 'image', $author_image );

	$manager->add_entity( $author );
	$manager->add_entity( $author_image );

	$article->add_reference( 'author', $author );
}

Otherwise this plugin is amazing, thank you!

I18N: New UI Strings in JS Files

From 3.6.0, there are many UI strings in JS files. Even if they are fully translated and generated to JSON file, this kind of UI strings cannot display correctly, and they still show English strings.

Plugin shortcode blank even after using slim_seo_skipped_shortcodes filter

So I created a plugin a long time ago and for a while it worked with Slim SEO. Since recently the shortcode page is just blank though. I noticed it after updating my theme (Divi) but I also noticed that my plugin works again after deactivating Slim SEO.

Could Divi / the Divi theme shortcodes be an issue? The page seems to render just fine, it's just my plugin shortcode that is blank.

As mentioned in the title, i've tried using the slim_seo_skipped_shortcodes filter to add my shortcode but it didn't help.

Any ideas what I can do to make it work again?

Suggestion: add a link to the sitemap on the settings page

I would like to suggest adding a link to the websites sitemap on the settings page of Slim SEO.

Currently there is just a toggle on the settings page to turn on/off sitemaps with some minor information added. I had to go to the documents to find out what the link is to the sitemap (domain.com/sitemap.xml of course... 😝 ). It would be nice to have a link added there so I can directly check out my sitemap.

I appreciate your plugin by the way. Thanks for sharing your work with the world 🙏

Multisite support?

Thanks for the work on this project. Should this plugin work for multisite installations too? I have installed the plugin and network activated it but the sitemap was only created on the primary blog and not the other sites in the network. I also tried moving the plugin to the "must-use" plugin directory and it still only worked for the primary blog. Before I troubleshoot this further I was wondering if you had tested this in a multisite setup and if you expect that it should work?

Two UI strings cannot display translations correctly

Two UI strings cannot correctly display the translation in [Slim SEO] Breadcrumbs even if translated.

  • Display the current page
  • Whether or not to display the current page.
    Please take a look at the screenshot I've attached.
    UI-Strings-Error

Divi theme issue

Open Graph and Meta description make components disappear.
Look at the video at https://b-smart.team/bijverdienen/

This video disappears when I enable one of the above or both. Divi support says I have to contact you (which is bad support from their side), so hoping someone can fix this.

Remove the feed notification from dashboard

Is there a way to remove the "Your RSS feed shows full text. Fix this →" notification on the dashboard, other than setting the feed to show the excerpt? I understand the reason behind the notification, and I'll rather keep the full text on my feeds anyway, but I don't want to keep that notification forever.

Edit: Same thing with the "Your site is not visible to search engines. Fix this →" notification. I'd like to see a close button to hide the notification until is needed again (e.g. after some relevant change in the settings).

Deprecation warnings while editing media library posts

I noticed deprecation warnings while editing a post from the media library in list view

Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in .../wp/wp-includes/link-template.php on line 3908

Deprecated: str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in .../wp/wp-admin/includes/post.php on line 1471

Deprecated: urldecode(): Passing null to parameter #1 ($string) of type string is deprecated in .../wp/wp-admin/includes/post.php on line 1557

Deprecated: ltrim(): Passing null to parameter #1 ($string) of type string is deprecated in .../wp/wp-includes/formatting.php on line 4494

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.