Sync custom first and last name fields in Drupal with CiviCRM
My answer is an alternative that was used in order to accomplish what was needed. Rather than sync Drupal fields with CiviCRM fields, I activated the ability for CiviCRM fields to be used in Drupal views, as well as created custom profiles in CiviCRM to render the fields during the Drupal registration process. Please go ahead an add an answer if it answers the original question.


Go to http://yourdomain.com/civicrm/admin/setting/uf?reset=1, replacing "yourdomain.com" with your actual domain. Copy all the code shown.
Edit your settings.php file and insert the code after the databases array, so it will look something like this:

$databases = array (
  'default' =&gt;
  array (
    'default' =&gt;
    array (
      'database' =&gt; 'drupal',
      'username' =&gt; 'user',
      'password' =&gt; 'password',
      'host' =&gt; 'localhost',
      'port' =&gt; '',
      'driver' =&gt; 'mysql',
      'prefix' =&gt; '',
    ),
  ),
);


/* Beginning of pasted code from CiviCRM */
Clear site caches and civicrm caches and you should be able to render CiviCRM fields in your Drupal views.


Source: https://docs.civicrm.org/sysadmin/en/latest/integration/drupal/views/ (Updated, thanks Aiden)