{"action":"created","issue":{"url":"https://api.github.com/repos/senlin/ymbeseo/issues/1","labels_url":"https://api.github.com/repos/senlin/ymbeseo/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/senlin/ymbeseo/issues/1/comments","events_url":"https://api.github.com/repos/senlin/ymbeseo/issues/1/events","html_url":"https://github.com/senlin/ymbeseo/issues/1","id":120173292,"number":1,"title":"Renaming & Compatibility","user":{"login":"Hube2","id":6631975,"avatar_url":"https://avatars.githubusercontent.com/u/6631975?v=3","gravatar_id":"","url":"https://api.github.com/users/Hube2","html_url":"https://github.com/Hube2","followers_url":"https://api.github.com/users/Hube2/followers","following_url":"https://api.github.com/users/Hube2/following{/other_user}","gists_url":"https://api.github.com/users/Hube2/gists{/gist_id}","starred_url":"https://api.github.com/users/Hube2/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Hube2/subscriptions","organizations_url":"https://api.github.com/users/Hube2/orgs","repos_url":"https://api.github.com/users/Hube2/repos","events_url":"https://api.github.com/users/Hube2/events{/privacy}","received_events_url":"https://api.github.com/users/Hube2/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":14,"created_at":"2015-12-03T13:40:09Z","updated_at":"2015-12-05T19:24:47Z","closed_at":null,"body":"I discussed this a bit with Piet already.\r\n\r\nWhen renaming we should also keep the plugin compatible with the original for a time in order to make it easy for users to switch to this new version.\r\n\r\n1) All postmeta and other DB value names should remain unchanged until we can build an import tool to convert them to new names.\r\n\r\n2) All functions that would be commonly used, like `yoast_breadcrumb()`\r\nCreate a file called \"depricated.php\" or something similar. Rename the function and add a wrapper function in deprecated that calls the new function name.\r\nExample:\r\n```\r\nfunction yoast_breadcrumb ($before = '', $after = '', $display = true) {\r\n  ymbeseo_breadcrumb($before, $after, $display);\r\n}\r\n```\r\n\r\n3) Hooks. these would also need to be kept. My suggestion would be to create a file named \"depricated-hooks.php\" or something similar. Rename the hook in the plugin as well has the function that's called and then add a filter to run the old hook name to the deprecated file that calls the new function.\r\nExample:\r\n```\r\nadd_filter('ymbeseo_metadesc', 'depricated_wpseo_metadesc');\r\nfunction depricated_wpseo_metadesc($value) {\r\n  return apply_filters('wpseo_metadesc', $value);\r\n}\r\n```\r\n\r\nThere may be some additional cases that I've missed were the old names should be kept in existence.\r\n\r\nThen at some future date when it's safe these can remove them completely.\r\n"},"comment":{"url":"https://api.github.com/repos/senlin/ymbeseo/issues/comments/162239187","html_url":"https://github.com/senlin/ymbeseo/issues/1#issuecomment-162239187","issue_url":"https://api.github.com/repos/senlin/ymbeseo/issues/1","id":162239187,"user":{"login":"pippinsplugins","id":1034109,"avatar_url":"https://avatars.githubusercontent.com/u/1034109?v=3","gravatar_id":"","url":"https://api.github.com/users/pippinsplugins","html_url":"https://github.com/pippinsplugins","followers_url":"https://api.github.com/users/pippinsplugins/followers","following_url":"https://api.github.com/users/pippinsplugins/following{/other_user}","gists_url":"https://api.github.com/users/pippinsplugins/gists{/gist_id}","starred_url":"https://api.github.com/users/pippinsplugins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pippinsplugins/subscriptions","organizations_url":"https://api.github.com/users/pippinsplugins/orgs","repos_url":"https://api.github.com/users/pippinsplugins/repos","events_url":"https://api.github.com/users/pippinsplugins/events{/privacy}","received_events_url":"https://api.github.com/users/pippinsplugins/received_events","type":"User","site_admin":false},"created_at":"2015-12-05T19:24:47Z","updated_at":"2015-12-05T19:24:47Z","body":"Yes it would. You could do \"SEO for WordPress.\".\n\nOn Saturday, December 5, 2015, Stanislav Khromov <notifications@github.com>\nwrote:\n\n> I can think of some creative ways to register yoast_ functions / filters\n> without adding them to the source code.\n>\n> One way would be to have a \"Compatibility\" option in the plugin with a\n> text field where the user would fill in the name of the plugin they want to\n> be backwards compatible with. The *user* would then fill in yoast into\n> the metabox and all relevant filters and functions would be dynamically\n> created.\n>\n> That being said, like @blueliquiddesigns\n> <https://github.com/blueliquiddesigns> said there is no precedent for\n> this.\n>\n> —\n> Reply to this email directly or view it on GitHub\n> <https://github.com/senlin/ymbeseo/issues/1#issuecomment-162234151>.\n>\n"}}