Which hosting package is the best for 6 websites, all running on WP?

Hey WHT,

I have 6 sites that i run/plan on running and currently, and at the moment i use shared hosting on all of them with a few of dif… | Read the rest of https://www.webhostingtalk.com/showthread.php?t=1839009&goto=newpost

Free websites are no longer accepted without SSL

Hi,
SEMrush

My blog was refused 3 times and each with each one i was able to fix the violation to the last unaccepted message to see line below..
[​IMG]

Almost all free websites can not install ssl certificate in their site and can only use ssl cloudflare to have https. Cloudflare is self-sighed redirects http to https and not https where i be able to install in my host.

Must get new host and buy ssl for my blog.

 

I want to pay to advertise on adult websites

I want to pay to advertise on adult websites, and I need a lot of adult webmasters to contact me for cooperation, my Skype: live:.cid.57fbf59467140439

security – Is my website’s PHP registration system secure?

I would like to know if my registration system is secure. I’m not sure if it is secure, as I’m new in development, and I’m afraid that the system is flawed

Also, I’m not experienced in object oriented programming, I would like to know if my script looks a bit like OOP or is simply a set of procedural programming with object oriented

database.php

<?php

/**
 * Class responsible for connecting to the database
 * It will be inherited by the SignUp class
 */
class DatabaseConnection
{
    public function __construct(string $host, string $dbname, string $username, string $password)
    {
        try{
            $this->database = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8mb4", $username, $password);
        }catch(PDOException $e){
            throw new Exception($e->getMessage());
        }
    }
}

registration.php

<?php

/**
 * This is a registration script
 * @author Anne Batch
 * @copyright 2021
 */

declare(strict_types = 1);

class SignUp extends DatabaseConnection
{
    /**
     * Database Connection
     * @var PDO
     */
    private $database;

    /**
     * @var string
     */
    private $name;

    /**
     * @var string
     */
    private $email;

    /**
     * @var string
     */
    private $passwordHash;

    /**
     * @var string
     */
    private $signUpPage;
    
    /**
     * @param string $name Assign the username
     */
    public function setName(string $name)
    {
        $this->name = $name;
    }

    /**
     * @param string $email Assign the email
     */
    public function setEmail(string $email)
    {
        $this->email = $email;
    }

    /**
     * @param string $password & $confirm Assign password and password confirmation
     */
    public function setPassword(string $password, string $confirm)
    {
        if ($password === $confirm) {
            $options = (
                'cost' => 12,
            );
            $this->passwordHash = password_hash($password, PASSWORD_BCRYPT, $options);
        }
        else {
            $this->returnWithError('<div class="alert alert-danger" role="alert">Passwords does not match!</div>');
        }
    }

    /**
     * @param $signUpPage Redirect Page
     */
    public function signUpPage(string $signUpPage)
    {
        $this->signUpPage = $signUpPage;
    }

    /**
     * @param $errorMessage Notification Message
     */
    private function returnWithError(string $errorMessage)
    {
        $_SESSION('error') = $errorMessage;
        header('Location: ' . $this->signUpPage);
        exit();
    }

    /**
     * Checks whether a name exists
     */
    public function existingName(): void
    {
        $statement = $this->database->prepare("SELECT 1 FROM users WHERE username = :username");
        $statement->execute((
            ":username" => $this->name
        ));
        $exists = $statement->fetchColumn();

        if(!$exists) {
            $this->returnWithError('<div class="alert alert-danger" role="alert">Name already exists!</div>');
        }
    }

    /**
     * Checks whether an email exists
     */
    public function existingEmail(): void
    {
        $statement = $this->database->prepare("SELECT email FROM users WHERE email = :email");
        $statement->execute((
            ":email" => $this->email
        ));

        $result = $statement->rowCount();

        if($result != 0) {
            $this->returnWithError('<div class="alert alert-danger" role="alert">Email already exists!</div>');
        }
    }

    /**
     * Checks if the fields have been filled
     */
    public function isDefinedFields(): void
    {
        if(!$this->name || !$this->email) {
            $this->returnWithError('<div class="alert alert-danger" role="alert">Please, fill out all the fields!</div>');
        }
    }

    /**
     * Checks if the username is less than 3 or greater than 50
     */
    public function ValidateNameLength(): void
    {
        if(mb_strlen($this->name) < 3) {
            $this->returnWithError('<div class="alert alert-danger" role="alert">Can only use 3 or more characters as name!</div>');
        }

        if(mb_strlen($this->name) > 50) {
            $this->returnWithError('<div class="alert alert-danger" role="alert">Can only use a maximum of 50 characters as name!</div>');
        }
    }

    /**
     * Checks if the email is semantically correct
     */
    public function ValidateEmail(): void
    {
        if(!filter_input(INPUT_POST, $this->email, FILTER_VALIDATE_EMAIL)) {
            $this->returnWithError('<div class="alert alert-danger" role="alert">Incorrect email!</div>');
        }
    }
    
    /**
     * Checks if the username matches the regular expression
     * The purpose of regular expression is to prevent JavaScript attacks
     * The user will not be able to use certain characters, such as <> /
     */
    public function addUser(): void
    {
        if(preg_match("/^(w&.-)*$/", $this->name)) {
                $statement = $this->database->prepare("INSERT INTO users VALUES(?, ?, ?, ?, ?, ?, ?)");
                $statement->execute((
                    $this->name,
                    $this->email,
                    $this->passwordHash,
                    $_SERVER('REMOTE_ADDR'),
                    $_SERVER('HTTP_CLIENT_IP'),
                    $_SERVER('HTTP_X_FORWARDED_FOR'),
                    $_SERVER('HTTP_USER_AGENT')
                ));
                if($statement) {
                    $this->returnWithError('<div class="alert alert-success" role="alert">Registered successfully!<br>Login now</div>');
                }
            }  
        else {
            $this->returnWithError('<div class="alert alert-danger" role="alert">Can only use letters and numbers as name!</div>');
        }
    }
}

main.php

<?php

session_start();

require_once('database.php');
require_once('registration.php');

$users = new SignUp('localhost', 'database', 'root', 'password');
$users->setName($_POST('username'));
$users->setEmail($_POST('email'));
$users->signUpPage('signup');
$users->setPassword($_POST('password'), $_POST('password2'));
$users->existingName();
$users->existingEmail();
$users->isDefinedFields();
$users->ValidateNameLength();
$users->ValidateEmail();
$users->addUser();

How to change my website’s map data image (maybe from knowledge graph) in the search results?

API Google Knowledge Graph scrapes structured data which in turn for images Google supports for the following types:

It is not clear from your question what type your image is.
You can use these Google guidelines for your images:

To non-amp: For best results, provide multiple high-resolution images
(minimum of 300,000 pixels when multiplying width and height) with the
following aspect ratios: 16×9, 4×3, and 1×1.

To amp: For best results, provide multiple high-resolution images
(minimum of 800,000 pixels when multiplying width and height) with the
following aspect ratios: 16×9, 4×3, and 1×1.

There is also an example there:

    {
  "@context": "https://schema.org",
  "@type": "NewsArticle",
  "image": (
    "https://example.com/photos/1x1/photo.jpg",
    "https://example.com/photos/4x3/photo.jpg",
    "https://example.com/photos/16x9/photo.jpg"
  )
}

In addition, even if there is structured data consistent with Google’s guide, they do not undertake to use this data in a rich result. Check out the following Google statement about structured data:

Important: Google does not guarantee that your structured data will
show up in search results, even if your page is marked up correctly
according to the Rich Results Test. Here are some common reasons why:

Using structured data enables a feature to be present, it does not
guarantee that it will be present. The Google algorithm tailors search
results to create what it thinks is the best search experience for a
user, depending on many variables, including search history, location,
and device type. In some cases it may determine that one feature is
more appropriate than another, or even that a plain blue link is best.
The structured data is not representative of the main content of the
page, or is potentially misleading. The structured data is incorrect
in a way that the Rich Results Test was not able to catch. The content
referred to by the structured data is hidden from the user. The page
does not meet the guidelines for structured data described here, the
type-specific guidelines, or the general webmaster guidelines.

magento2 – Use single wishlist in multi websites

I have a magento 2 website where I want to share wishlist between websites (for logged in users and guest users). For ex. guest user added product1 to the wishlist from website1 and now user switches to website2 then user would be able to see the same product to wishlist already.

but now every website has own wishlist

magento is only providing sharing between stores not websites. I’ve tried some solutions but no luck,
i used this solution for sharing cart between websites Magento 2 + How to share cart for guest users between multi websites and working great.
i tried to use it with wishlist but didn’t work

i extened the wishlist model and changed getSharedStoreIds function

    /**
     * @return int()
     */
    public function getSharedStoreIds()
    {
        if ($this->_storeIds === null || !is_array($this->_storeIds)) {
                $_storeIds = ();
                $stores = $this->_storeManager->getStores();
                foreach ($stores as $store) {
                    $_storeIds() = $store->getId();
                }
                $this->_storeIds = $_storeIds;
        }
        return $this->_storeIds;
    }

but still not working

I will make manual profile backlinks on high authority websites for $30

I will make manual profile backlinks on high authority websites

Everyone knows that profile backlinks are a type of Off-Page SEO, which helps your website to rank 1st on Google.

We create manually profile backlinks on high authority websites such as Ted, Sound Cloud, Twitter, GitHub etc.

The main thing about our gig is that we provide 100% manual work, not any software work.

Why Choose Our Service?

  • 100% manual Backlink Creation service.
  • Totally White Hat SEO Backlinks.
  • 100% Customer satisfaction.
  • 100% Friendly with Panda Bot, apodiform bird and sphenisci form seabird.
  • Extra Express Delivery Services.
  • Quality check-in and Revision.
  • Only High DA/PA Links.
  • Complete Excel report with login details.
  • Do-follow and No-follow mix Profile backlinks that look natural.
  • Unlimited keywords and URL.
  • Accept any Language website.

.

seo – Dynamic Serving via ‘vary http’: Is still valid? Why the industry prefer full responsive websites instead?

I have a client that asked me to develop a website using a dynamic serving technique, basically he uses the vary http header in order to serve different versions of the front-end discerning them based on the user-agent of the client.

So for example a light version could be served for mobile devices, where a heavy one (with more CSS) could be served to a desktop pc browser.

I’m sure that this technique could be a good solution, for example I can prevent a mobile device to download css with media queries that it won’t use anyway, and also avoid to download parts of html that I would eventually hide on mobile (Google says that it’s not considered cloacking as long as content data is similar).

But besides the duplicate logic, because in the long run you’ll need to maintain 2 different frontend views, so changes will always be twice (on the mobile and on the desktop version), I’m wondering if it’s still considered a valid approach, since I don’t found too much information (and not recent information about it).

Furthermore, I’m fully aware that responsive web development is a valid way to go but is my client right when he says that with responsive frontend the mobile device still needs to download the full css bundle?

Any suggestions or insights will be really appreciated!

SEO friendly manual backlinks from relevant sites Republic of South Africa websites for $79

SEO friendly manual backlinks from relevant sites Republic of South Africa websites

Need high-quality backlinks from the Republic of South Africa without breaking the bank? Our link-building services are perfect for everyone. All the links we publish are contained within high-quality posts.

Using marketing and link-building techniques, we increase trustworthy traffic to your website.

Package includes:

Audit

Competitor analysis (Through a competitor backlink analysis, you can see the number and quality of sites linking to your competitors. This offers insight into why the sites are ranking well. If a competitor’s site is appearing on the first page of the search, you can view the backlink portfolio that helped them earn their high position). We will use the report to build backlinks.

Local SEO

Ecommerce SEO

Digital PR

Republic of South Africa directory backlinks to boost SEO score and grow online.

High Trust Flow/Citation Flow backlinks

Social bookmarks

Web 2.0

Articles

– We will find, join and post content to Relevant Facebook Groups to Explode Your Website Traffic.

– We will create, promote, and optimize video to grow your brand on Youtube.

Promoting your content is just as important as creating it!

All backlinks will be manually done and relevant to your niche. Ranking increase and traffic guaranteed!

Set-Up: Once you have paid for your order you can send us your target URL and anchors(only 1 URL and 5 keywords).

Report: Once all placements are complete we will send you a report that includes all data.

.(tagsToTranslate)rpa(t)africa(t)seo(t)sem(t)backlink(t)backlinks

SEO friendly manual backlinks from relevant sites Nigeria websites for $79

SEO friendly manual backlinks from relevant sites Nigeria websites

Need high-quality backlinks from Nigeria without breaking the bank? Our link-building services are perfect for everyone. All the links we publish are contained within high-quality posts.

Using marketing and link-building techniques, we increase trustworthy traffic to your website.

Package includes:

Audit

Competitor analysis (Through a competitor backlink analysis, you can see the number and quality of sites linking to your competitors. This offers insight into why the sites are ranking well. If a competitor’s site is appearing on the first page of the search, you can view the backlink portfolio that helped them earn their high position). We will use the report to build backlinks.

Local SEO

Ecommerce SEO

Digital PR

Nigeria directory backlinks to boost SEO score and grow online.

High Trust Flow/Citation Flow backlinks

Social bookmarks

Web 2.0

Articles

– We will find, join and post content to Relevant Facebook Groups to Explode Your Website Traffic.

– We will create, promote, and optimize video to grow your brand on Youtube.

Promoting your content is just as important as creating it!

All backlinks will be manually done and relevant to your niche. Ranking increase and traffic guaranteed!

Set-Up: Once you have paid for your order you can send us your target URL and anchors(only 1 URL and 5 keywords).

Report: Once all placements are complete we will send you a report that includes all data.

.(tagsToTranslate)nigeria(t)seo(t)sem(t)backlink(t)backlinks(t)promotion