Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

VS Code highlighted all my wordpress function name

I am using PHP Intelephense(version 1.3.7) which is the latest version and my VS Code is up to date There was no problem before but a few days ago, it keeps on highlighted all my wordpress function name I tried to downgrade my PHP Intelephense but the situation still exist.. Any help will be appreciate

enter image description here

like image 739
CyberCatHK Avatar asked Jan 24 '20 05:01

CyberCatHK


People also ask

Can you use WordPress with VS code?

Out-of-the-box, VS Code doesn't support WordPress and PHP as well as some other IDEs like PhpStorm (Find out how some of our team uses PhpStorm for WordPress Development). Luckily, that's easy to change by installing some extensions.

How do you get the suggestions on VS code?

Open the Default Keyboard Shortcuts (File > Preferences > Keyboard Shortcuts) and search for "suggest".


3 Answers

You have to add "wordpress" to the intelephense.stubs array setting in your VS Code settings file. This array should probably also have many other stubs listed as well. For example: ("wordpress" is at the bottom)

//  VS Code settings.json
{
    // ... other settings here ...
    "intelephense.files.maxSize": 3000000,
    "intelephense.stubs": [
        "apache",
        "bcmath",
        "bz2",
        "calendar",
        "com_dotnet",
        "Core",
        "ctype",
        "curl",
        "date",
        "dba",
        "dom",
        "enchant",
        "exif",
        "FFI",
        "fileinfo",
        "filter",
        "fpm",
        "ftp",
        "gd",
        "gettext",
        "gmp",
        "hash",
        "iconv",
        "imap",
        "intl",
        "json",
        "ldap",
        "libxml",
        "mbstring",
        "meta",
        "mysqli",
        "oci8",
        "odbc",
        "openssl",
        "pcntl",
        "pcre",
        "PDO",
        "pdo_ibm",
        "pdo_mysql",
        "pdo_pgsql",
        "pdo_sqlite",
        "pgsql",
        "Phar",
        "posix",
        "pspell",
        "readline",
        "Reflection",
        "session",
        "shmop",
        "SimpleXML",
        "snmp",
        "soap",
        "sockets",
        "sodium",
        "SPL",
        "sqlite3",
        "standard",
        "superglobals",
        "sysvmsg",
        "sysvsem",
        "sysvshm",
        "tidy",
        "tokenizer",
        "xml",
        "xmlreader",
        "xmlrpc",
        "xmlwriter",
        "xsl",
        "Zend OPcache",
        "zip",
        "zlib",
        "wordpress"
    ]
}

You can also take a look at these github issues:

  • Include wordpress stubs that can be enabled in intelephense.stubs #833
  • [DOC]: Better way to get WordPress intellisense #2
like image 165
drwatsoncode Avatar answered Oct 17 '22 10:10

drwatsoncode


The quick fix for this is simply to add WordPress to the Intelephense: Stubs list.

1: Press (Ctrl+Shift+X) to the extensions bar on the left and search for PHP Intelephense.

2: Click the settings icon of the extension and choose Extension Settings.

screenshot of extensions bar

3: Scroll down to the bottom to see the list of Stubs.

4: Click on Add Item and choose wordpress from the list.

screenshot of extensions settings menu

If the changes are not affected, try to close and reopen Vscode.

This will solve the issue with built-in WordPress Functions, However, it will not recognize any functions from installed plugins.

like image 44
adam allalou Avatar answered Oct 17 '22 08:10

adam allalou


Maybe I'm missing something, but I never have this problem, and I think the reason is just that I open my whole WordPress site directory in VS Code at once.

Are you opening only your theme directory?

If so it makes sense that these functions are missing since they aren't in the project.

Open the whole site and this should go away. You'll also get all your theme and plugin functions imported correctly.

like image 1
jerclarke Avatar answered Oct 17 '22 08:10

jerclarke